A few observations Re: Clean

Hassett hassett@acm.org
Fri, 10 Apr 1998 19:25:05 -0500


On Wed 08 Apr, Adrian Hey (evidently not a fan of Ada) wrote

> If you want to see a really slow compiler I suggest
> you try using ADA (yuk!) if you haven't already.

I'm not an expert on the compilation of functional languages (though I
am a fan of functional programming), so I'm curious about compilation
speed.

Is a Clean compiler really much faster than an Ada compiler?  The Clean
home page describes the speed of compilers as generally in the thousands
of lines per minute.  Here are some Ada compilation speeds that have
been reported to me:

Source Size Optimization Minutes Compiler*  Platform
----------- ------------ ------- ---------- ----------------------

   20,000       none         8   gnat       Pentium II 266MHz
   20,000       full        17   gnat       Pentium II 266MHz

   33,742       full        35   gnat 3.10p "Heavily loaded" UltraSparc

   24,297       full         8   AdaMagic   SPARCstation 5

(Source sizes are counts of semicolons that are not in comments or
literals, a "traditional" measure of Ada source text that omits all
comments and blank lines, and generally corresponds to a count of the
number of statements, declarations, and similar constructs.)

These numbers range from about 1K to 3K "semicolons" per minute.
Given that compilation speed is subject to many variables (details of
the source text, method of measuring source size, platform speed, OS,
disk access time, system load, degree of optimization, available RAM,
etc.), these seem to be close to the range claimed for Clean compilers.

Does anyone some data points on Clean compilation speed to offer?

- Jim Hassett

* The Ada compilers used:
  gnat - GNU Ada, a "free" (GNU GPL) compiler (www.gnat.com
  AdaMagic - Intermetrics AdaMagic 2.787 (using gcc as "back end")