From ... From: Erik Naggum Subject: Re: clisp: compile Lisp program to stand alone binary? Date: 1998/10/07 Message-ID: <3116775742040621@naggum.no>#1/1 X-Deja-AN: 398724752 References: <362151b1.7389655@news.newsguy.com> <3116573412536149@naggum.no> <362782a4.85456830@news.newsguy.com> <3116663895330295@naggum.no> <361cbdb0.166108751@news.newsguy.com> mail-copies-to: never Organization: Naggum Software; +47 8800 8879; http://www.naggum.no Newsgroups: comp.lang.lisp * trashcan@david-steuber.com (David Steuber "The Interloper") | However, it would be something of a show stopper for me if Lisp couldn't | create stand alone applications the way C can. It would make it less | than general purpose. I really don't understand this argument. when you start up a C program, a _lot_ of stuff happens that it is impossible _not_ to refer to as a "run-time environment". C programs are not "stand-alone" for any reasonable meaning of that concept. in fact, _nothing_ is stand-alone, anymore, except for operating systems and certain embedded systems. the rest of the interesting applications are interdependent in massive ways. for all the evil and fraudulent marketing and business practices that Bill Gates and Microsoft have tried to get away with, the well-deserved lawsuits against them are annoyingly shallow and even stupid. I hate it when bad people get off the hook just because their opponents are dumb. relevant to this case is that their browser _is_ part of their operating system and vice versa, as is all the rest of the shitware they hoist onto innocent Intel processors everywhere, but the coupling is no more or less hard than any other operating system or major application environment. the problem is that it is not documented, even though it _is_ exported. IBM was forced to release documentation for their subsystem interconnect cables as part of their antitrust lawsuits, allowing Amdahl to produce "plug-compatible" systems and hardware. something like this has to be done with software, as well, and then we can start to _rely_ on and exploit the environment instead of being held hostage by it. and perhaps in 50 years' time, even C programmers will start to understand that they are _frightfully_ dependent on the services of the operating system and lots and lots of supporting software elsewhere in the system. "stand-alone" is a red herring. what do you _really_ want? why is your outdated understanding of "stand-alone" the only answer to your question, to the exclusion of every other answer? if you want an application that can be shipped elsewhere and it needs a Common Lisp environment, ship the Common Lisp environment. like, duh. those who object to this are merely ignorant of the fact that they were willing to install an operating system before your application, too, and perhaps had to acquire several components from several disparate vendors to build a complete system. you offer them the _benefit_ of shipping the environment they need. if you are frightened of the prospect, _you_ will be the cause of your loss in sales or whatever, not any inherent aspects of the Common Lisp environment you refused to ship. (note, however, that commercial distribution of either run-time versions or development systems may require you to share with their vendor. if this is what you don't like, try a tax strike first; it's just a futile, but at least it has a better moral foundation.) | I still have to boot over to Linux to see if cmucl was included in my | distribution. The cmu web site mentioned "python" as a new cmu cl | compiler. I've heard references to it before and thought it was a | programming language. Is python possibly a synonym for cmu cl? PYTHON is the name of the compiler in CMU CL. PYTHON is also the name of a programming language. they are not related _except_ by name. | Is cmu cl a better lisp than clisp? yes, most definitely. | I would prefer to stick with just one lisp for a while, and I would like | it to be the Common Lisp that is considered the most suitable for | creating X windows applications. well, if CLISP has it, you got the source. just compile the relevant parts in CMU CL, instead, and off you go. (if it doesn't compile, as I suspect is the case, that's why you shouldn't use CLISP.) #:Erik