Newsgroups: comp.lang.dylan,comp.lang.lisp,comp.lang.lisp.mcl
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!news3.near.net!noc.near.net!paperboy.wellfleet.com!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!ix.netcom.com!netcom.com!netcom8!tmb
From: tmb@netcom8.netcom.com (Thomas Breuel)
Subject: Re: A Dylan implemented on Common Lisp
In-Reply-To: Erik Naggum's message of Thu, 16 Mar 1995 23:31:32 GMT
Message-ID: <TMB.95Mar16164203@netcom8.netcom.com>
Sender: tmb@netcom8.netcom.com
Organization: NETCOM On-line services
References: <3jirll$r0g@cantaloupe.srv.cs.cmu.edu>
	<creedy-1403951526040001@clreedy-mac.mitre.org>
	<3k53lf$h25@news.cs.brandeis.edu>
	<garges-1403951719060001@garges.ucsc.edu>
	<3k5ko2$pc9@geraldo.cc.utexas.edu> <3004385493.825773@naggum.no>
Date: Fri, 17 Mar 1995 00:42:01 GMT
Lines: 32
Xref: glinda.oz.cs.cmu.edu comp.lang.dylan:3765 comp.lang.lisp:17110 comp.lang.lisp.mcl:6661

In article <3004385493.825773@naggum.no> Erik Naggum <erik@naggum.no> writes:
| you may not recall that I tried to show the C fans that their "small
| footprint" C programs actually incur shared libraries, memory allocation,
| etc, on behalf of the program that rocket their 50K "disk image" into much
| larger memory images, and enjoy special operating system support that other
| languages will have to put in shared libraries.

First of all, under Linux, a shared library "hello, world" program is
15k, a statically linked program is 43k.

Second, saying that there is "special operating system support" for C
is a misrepresentation.  C libraries often have stub routines to make
OS calls using a non-C calling convention C compatible.  That doesn't
take a lot of overhead in C, and it shouldn't take a lot of overhead
in any language.

OS interfacing does take a lot of code and reduce efficiency in
CommonLisp because CommonLisp isn't just content with interfacing with
the OS.  Instead, it isolates the programmer from the OS.

| I guess the reason for the
| confusion is that people can't differentiate "program" from "process".
| programs sit on disk, processes run in memory.  I think the latter is more
| important than the former, as disk is still _way_ cheaper than RAM, so I
| consider disk footprint to be red herring.

"hello, world" in C has a SIZE of 28kbytes and an RSS of 128kbytes
under Linux.  By modern standards, that seems pretty modest.  Of
course, much more space efficient implementations have existed in the
past.

				Thomas.
