Greetings! Robert Boyer <[EMAIL PROTECTED]> writes:
> > In Lisp, compiling is a very incremental process, with many, often > > thousands of small functions compiled one at a time. > > Whereas in C, say, ... > > I think that the build of GCL 2.7.0 involves over 600 distinct calls of gcc. > Of course, that's with my particular configuration, which includes > > --disable-statsysbfd --enable-locbfd > Well, yes, at your site you compile both gmp and bfd along with gcl. This really isn't a very modular design -- these subtrees are provided for convenience and ease of maintenance. Its quite wasteful in system memory, for example, if many copies of gcl are running and each has its own bfd and gmp non-shareable in core. In any case, this is required at the moment to get beyond 1Gb on 32bit Linux as you are aware. I've still never seen anything in the world of C which compares to the >3000 closures compiled by acl2 by default, each of which contain only a few lines of code. There is nothing the matter with this, its just different from the way a C programmer would approach the problem. The main difference, IMHO, is that C has the concept of a "file" which bounds the scope of static variables. This often governs data structure layout, in my experience. (In fact, in case you saw my recent maxima post, maxima follows the lovely practice of declaring variables with names like 'm as special in one file, loading, and compiling a bunch of others where 'm is apparently intended as a lexical. A C programmer can limit this kind of damage with the "file" concept.) Take care, > Bob > > > -- Camm Maguire [EMAIL PROTECTED] ========================================================================== "The earth is but one country, and mankind its citizens." -- Baha'u'llah _______________________________________________ Gcl-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gcl-devel
