On 12/17/05, Partap Davis <[EMAIL PROTECTED]> wrote:
> > Is a .exe file absolutely required?
> >
>
> I'm new to lisp as well (been lurking), and that's one thing that I've been
> wondering about.  What exactly is so hard about making a standalone
> executable out of lisp source?
In principle, I don't think there is anything hard about it.  Corman
CL, Lispworks and Allegro all support making "stand alone"
executables.  Lispworks will even make a single .exe file.  I think
Corman makes an exe either with or without a dll file that implements
the lisp runtime.  I don't know what allegro does, as I've never had a
need to play with it.

I can't say why certain free lisps don't have this functionality other
than *guessing* that it isn't very important to the implementors.  And
in reality, it is not a barrier for distributing applications.  There
are not a lot of windows programs I use that are only one file.  They
have dll files that get installed, resource files, etc.  Java
applications are seldom a single file, unless you make a jar.  Mac
applications hide the multitude of files in a .app bundle.  With
clisp, you really only need two things, the lisp driver exe and a core
memory image, and maybe a driver bat file to start them.  And if
someone really cared about it, they could make a C program that
replaced the bat file.

All my program does is automate the generation of a core image file
that contains all of the application code, and the bat file to run it.
 I think it also puts everything you need in a directory that you
specify, which you can then zip up and send to someone.

>
> I can understand that if you want to be able to interact with the
> source...say for debugging, you need access to the entire environment.  But
> what if you just want to package a binary for distribution?
>
> This kind of goes with the other thread about the standard library.
> Somebody was mentioning that you would have to include the entire library
> whether you used it or not.  This is not true for programs written in other
> languages.  You either only link in the functions that are referenced in the
> program, or dynamically link from a shared object file.
>
> Is there something so fundamental to the lisp language that the entire
> environment needs to be distributed with a (possible very simple) program?
> I love the idea of the interactive environment when developing code, but for
> distribution, it seems akin to not only leaving the debugging symbols in
> place, but attaching a copy of the debugger and standard libraries as
> well...
>
> Is there something I'm missing?  or is this just an issue with the various
> free implementations that are available and not lisp in general?
>
> -partap
> _______________________________________________
> Gardeners mailing list
> [email protected]
> http://www.lispniks.com/mailman/listinfo/gardeners
>
>
>
_______________________________________________
Gardeners mailing list
[email protected]
http://www.lispniks.com/mailman/listinfo/gardeners

Reply via email to