On 12/17/05, Andy Cristina <[EMAIL PROTECTED]> wrote:
I'm sorry, I hit send without finishing.
On 12/17/05, Andy Cristina <[EMAIL PROTECTED]> wrote:
> On 12/17/05, Partap Davis <[EMAIL PROTECTED] > wrote:
> > > Is a .exe file absolutely required?

My understanding is that the problem is that lisp includes a function
called eval, which can in principle need access to all of the
language.  But you can certainly remove parts of environment you don't
need via a "tree shaker," which removes things your program does not
specifically use.  Lispworks has one of these, and Allegro probably
does too.

Hmm.  So even with a lisp implementation that compiles to native code, you're still, in essence, running a virtual machine that handles (and possibly compiles) function calls?  This thread is probably not the place for it, but I'd like to learn more about this...any pointers on where to look?
 

In general, you are doing this.  If this isn't what you want, then you
need to use a tool that removes the parts you don't want included.
The commercial lisps seem to have these tools, whereas the free lisps
don't.  But even so, a clisp distribution is only a couple of megs.
Yes this is big for hello world, but is it really big compared to a
hello world with all C libraries statically linked?  I don't know how
big libc is.

I'm more concerned in general with lisp as a replacement for, eg. C, rather than perl or python, so
no clisp...looking at binary distributions of CMUCL and SBCL, it looks like they range from 7 to 80MB.  This would be fine if it could be done in shared objects, like C, Java and .NET.  But if you're including everything in a memory image for each app, this could quickly become unwieldy, if you wanted to run several lisp apps. 

You mentioned the Corman CL has the option of including the lisp runtime as a DLL, which would certainly help if one was only using that implementaion.  Would it be possible to make a *standard* CL runtime DLL with a standard ABI that worked sort of like libc?  Or is that something that is too closely coupled with the CL implementation to be portable/compatible?


Forgive my ignorance...I'm just trying to learn ;)

-partap
_______________________________________________
Gardeners mailing list
[email protected]
http://www.lispniks.com/mailman/listinfo/gardeners

Reply via email to