From: Paul Moore
Subject: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <36a86b43.11355801@news.origin-it.com>
Hi,
Can anybody tell me what free Common Lisp implementations exist for
Win32, specifically which ones support the latest version
(CLtL2/ANSI)? I'm after a decent implementation for learning Lisp, and
I'd like to avoid getting confused by "missing" features as compared
to the standard.

I've seen some implementations, notably CLISP, but they tend to refer
to CLtL1 with some of the CLtL2 features. Actually, can anybody tell
me what the significant differences are, and whether I should really
care?

I'd like to be able to build reasonably efficient programs, so some
form of compiler or a decent-performance interpreter would be best. An
IDE is not a requirement, and while I'd be interested in seeing how
good Lisp is with GUI development, I can live with a console
application only system. A foreign function (DLL) interface is a must.

I'd have looked in the FAQ, but I couldn't find one for this group...

Thanks in advance for any help/pointers,
Paul Moore.

From: Marc Battyani
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <95BA60D2551449DC.C8E47D296CB66E34.49077599F3120EAA@library-proxy.airnews.net>
Paul Moore wrote in message <·················@news.origin-it.com>...
>Hi,
>Can anybody tell me what free Common Lisp implementations exist for
>Win32, specifically which ones support the latest version
>(CLtL2/ANSI)? I'm after a decent implementation for learning Lisp, and
>I'd like to avoid getting confused by "missing" features as compared
>to the standard.
...
>I'd like to be able to build reasonably efficient programs, so some
>form of compiler or a decent-performance interpreter would be best. An
>IDE is not a requirement, and while I'd be interested in seeing how
>good Lisp is with GUI development, I can live with a console
>application only system. A foreign function (DLL) interface is a must.

Try  www.harlequin.com
and www.franz.com

Both have free trial/personnal versions.

Marc Battyani
From: Paul Moore
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <36a8ac78.11431518@news.origin-it.com>
On Fri, 22 Jan 1999 14:52:56 +0100, "Marc Battyani"
<·············@csi.com> wrote:

>Paul Moore wrote in message <·················@news.origin-it.com>...
>>Hi,
>>Can anybody tell me what free Common Lisp implementations exist for
>>Win32?
[...]
>...
>>I'd like to be able to build reasonably efficient programs, so some
>>form of compiler or a decent-performance interpreter would be best. An
>>IDE is not a requirement, and while I'd be interested in seeing how
>>good Lisp is with GUI development, I can live with a console
>>application only system. A foreign function (DLL) interface is a must.
>
>Try  www.harlequin.com
>and www.franz.com
>
>Both have free trial/personnal versions.
>
Thanks for the pointers - I've seen both. Both have limitations on
heap size (unspecified how much, but I don't want to invest time &
effort to find that I can't handle realistic amounts of data) and
neither support building standalone applications (Franz has no
compiler, which I'd really like to have, and Harlequin says the free
version "does not support application delivery".

I suppose this boils down to the fact that I don't want a "cut down"
version of a commercial product - if I didn't notice the limitations,
it wouldn't make me want to buy the full product (and I don't
anticipate buying any Lisp, for the sort of things I'd do it wouldn't
be a good investment...)

Paul.
From: Erik Naggum
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <3126049164241844@naggum.no>
* ··········@uk.origin-it.com (Paul Moore)
| Thanks for the pointers - I've seen both.  Both have limitations on heap
| size (unspecified how much, but I don't want to invest time & effort to
| find that I can't handle realistic amounts of data) and neither support
| building standalone applications (Franz has no compiler, which I'd really
| like to have, and Harlequin says the free version "does not support
| application delivery".

  Franz Inc Allegro CL 5.0 Lite offering has no _file_ compiler, but of
  course it has a compiler.  Windows people tend to rip other people off
  and pirate commercial software and such, so I see very valid reasons why
  vendors don't want to give away any ability that they would want to pay
  for if they were legitimate users.  the Unix world is very different,
  with the Linux world somewhere in between, with a strong desire to test
  things out for real without going through a lot of hassle.  as has been
  suggested, switch to Linux.

  btw, so-called standalone applications aren't.

| I suppose this boils down to the fact that I don't want a "cut down"
| version of a commercial product - if I didn't notice the limitations, it
| wouldn't make me want to buy the full product (and I don't anticipate
| buying any Lisp, for the sort of things I'd do it wouldn't be a good
| investment...)

  if you didn't notice the limitations, what would the difference beween
  what you want and what you get be?  I don't get it.  (I presume you want
  this for non-commercial use -- if you want to sell stuff, there are less
  comfortable limitations on free software than on commercial software.)
  if you want a full system, it doesn't cost a noticeable chunk of money,
  either.

#:Erik
-- 
  SIGTHTBABW: a signal sent from Unix to its programmers at random
  intervals to make them remember that There Has To Be A Better Way.
From: David Bakhash
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <wkg1933wos.fsf@mit.edu>
"Marc Battyani" <·············@csi.com> writes:

> Try  www.harlequin.com
> and www.franz.com

My personal opinion on this is that, w/o a compiler, you're not really
getting very much.  I, personally, am completely hindered by not being
able to use `compile-file', and that is the case with Allegro's free
trial version.  That, along with the limited heap size, makes these
trial versions unbarable, IMO.

On the other hand, I believe that Harlequin's free trial version _does_
allow you to compile, though it also has a limited heap size.  I think
you get "more" with the free Allegro stuff, but that extra stuff is
non-standard, so for a newbie, I don't even see the point to having that
stuff, unless (s)he wants a toy.

I think that Franz could have been 10x nicer by leaving in the
`compile-file' and maybe leaving out the `fasl-write', or whatever they
use to actually _create_ the .fasl files.  That way, at least you would
be able to see what the compiler things of your code.  Otherwise, you'll
have a hard time debugging.

If you ask me, learn on CLISP, or CMUCL, or Harlequin.  I'd not
bother downloading Allegro CL unless you're considering the purchase of
a serious CL implementation, with extra features.

dave
From: Christopher R. Barry
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <87ww2en2xe.fsf@2xtreme.net>
David Bakhash <·····@mit.edu> writes:

> "Marc Battyani" <·············@csi.com> writes:
> 
> > Try  www.harlequin.com
> > and www.franz.com
> 
> My personal opinion on this is that, w/o a compiler, you're not really
> getting very much.  I, personally, am completely hindered by not being
> able to use `compile-file', and that is the case with Allegro's free
> trial version.  That, along with the limited heap size, makes these
> trial versions unbarable, IMO.
> 
> On the other hand, I believe that Harlequin's free trial version _does_
> allow you to compile, though it also has a limited heap size.  I think
> you get "more" with the free Allegro stuff, but that extra stuff is
> non-standard, so for a newbie, I don't even see the point to having that
> stuff, unless (s)he wants a toy.
> 
> I think that Franz could have been 10x nicer by leaving in the
> `compile-file' and maybe leaving out the `fasl-write', or whatever they
> use to actually _create_ the .fasl files.  That way, at least you would
> be able to see what the compiler things of your code.  Otherwise, you'll
> have a hard time debugging.
> 
> If you ask me, learn on CLISP, or CMUCL, or Harlequin.  I'd not
> bother downloading Allegro CL unless you're considering the purchase of
> a serious CL implementation, with extra features.

In order to use CMUCL, the person would have to be using some sort of
Unix, in which case if they were using Linux they could get the
Allegro CL Linux Trial Edition, which is basically the Enterprise
Edition minus the runtime generator and a couple other features and
files.

That Allegro's Windows version is fairly crippled, well, this is the
treatment that Windows users have come to expect from trial editions,
and IMNSHO deserve.

Christopher
From: David Bakhash
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <cxjiudxopk1.fsf@engc.bu.edu>
I really wasn't aware until recently that the Linux free version was
more adequate than the free MS version.  It really makes no sense to
me, but anything that promotes using Linux over MS is a good thing.
If you think about it, maybe Franz crippled their free MS port to be
better matched with a crippled OS.

But I still mantain that the free MS trial version of ACL 5.0 is
mostly useless w/o the `compile-file'.  Part of trying out a Lisp
implementation is seeing if you like the compiler.  But I figure that
a serious buyer would call up the vendor and ask for a more elaborate
trial version, with all the features, and I'm sure that all of the
companies would be helpful in this regard.

dave
From: Bernhard Pfahringer
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <78d763$129i$1@www.univie.ac.at>
In article <···············@engc.bu.edu>,
David Bakhash  <·····@engc.bu.edu> wrote:
>
>But I still mantain that the free MS trial version of ACL 5.0 is
>mostly useless w/o the `compile-file'.  Part of trying out a Lisp
>implementation is seeing if you like the compiler.  But I figure that
>a serious buyer would call up the vendor and ask for a more elaborate
>trial version, with all the features, and I'm sure that all of the
>companies would be helpful in this regard.
>
>dave

A little coding could improve the usefulness for you:

(defun load-while-compiling-defs (file)
   (with-open-file (f file :direction :input)
      (loop with eof = (cons nil nil)
	    for sexp = (read f nil eof)
	    until (eq sexp eof)
	    do (eval sexp)
	    if (and (consp sexp) (consp (rest sexp))
		    (member (second sexp) '(defun defmacro defmethod)))
            do (compile (second sexp)))))

Bernhard
-- 
--------------------------------------------------------------------------
Bernhard Pfahringer
Austrian Research Institute for  http://www.ai.univie.ac.at/~bernhard/
Artificial Intelligence          ········@ai.univie.ac.at 
From: Lyman S. Taylor
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <78ddif$j51@pravda.cc.gatech.edu>
In article <·············@www.univie.ac.at>,
Bernhard Pfahringer <········@korb.ai.univie.ac.at> wrote:
>In article <···············@engc.bu.edu>,
>
>A little coding could improve the usefulness for you:
>
>(defun load-while-compiling-defs (file)

>      (loop 
>	    do (eval sexp)

>	    if (and (consp sexp) (consp (rest sexp))
>		    (member (second sexp) '(defun defmacro defmethod)))
>            do (compile (second sexp)))))

   Oooops,  didn't have my thinking cap all the way on before. :-)  However, 
   you may wish to non-interleave loading with compiling. 

          (defun foo (x) 
              (+  x y ))


          (defconstant y 3 ) 

   The above probably should compile without any warnings about Y being 
   special, but not declared as such.  You could use LOAD before the 
   loop and then skip the EVAL internal the loop. 
 
-- 
					
Lyman S. Taylor          "The Borg --  party poopers of the Galaxy. "
(·····@cc.gatech.edu)                 EMH Doctor  Star Trek Voyager. 
From: David Bakhash
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <cxjyamscbe5.fsf@engc.bu.edu>
yeah.

I noticed that "compile" was in there, and used in when it was
necessary, but I thought it was a pain in the butt, and I think
compile-file does more than this, besides writing the fasl file.

But thanks for posting your fix.  Now maybe Franz's free trial stuff
will _really_ become useless, if the remove "compile".

dave
From: Lyman S. Taylor
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <78d9cj$ivb@pravda.cc.gatech.edu>
In article <···············@engc.bu.edu>,
David Bakhash  <·····@engc.bu.edu> wrote:
>I really wasn't aware until recently that the Linux free version was
>more adequate than the free MS version.  It really makes no sense to
>me,
   
    Why not? The "Linux" space is substantially more composed of "free"
    programs than of commerical stuff.  In fact that there is, in some
    sub circles, a pronounced negative reaction to commerical stuff.

    Secondly, the vast majority of interaction users in the Linux space 
    enjoy hacking on stuff.  The penetration of Linux amoung CS majors is
    very likely several times the penetration of Linux in the 
    broad x86 market.  These folks aren't working on commerical apps.
    Therefore a "hobby" price of $0.0 is quite good.  Later if they do 
    something commerical then they pay (and likely more a more
    commerical platform).  So in some sense, it is related
    to the adage "don't eat your seed corn". 


>But I still mantain that the free MS trial version of ACL 5.0 is
>mostly useless w/o the `compile-file'.  Part of trying out a Lisp
>implementation is seeing if you like the compiler. 

     But the compiler _is_ there isn't it?  The function COMPILE is there
     right?

     The following is a protracted way of doing it.....

    >   (load  "foo.lisp" :print t ) 

      ... a long sequence  of symbols corresponding to the top level 
           defintions .....

    >   


      
     Take the above symbol sequence and with a copy and paste 

    >  (map nil #'compile '( ... paste sequence here ... ) )


      Also, doesn't the built-in editor have a compile buffer option?
      [ I've not used the ACL windows version much.  I've used a site licensed
        version of Lispworks for windows whose editor does have this].
      Of course if you want to use "Word Pad" to edit your lisp programs,
      this isn't an option. ;-)

      Or a menu open of the sort  "File>Compile..." 
      
      Either way it just means you have to compile each time start 
      the environment.  In the "hobby" and/or "student" context,
      forcing you to open/load the "program" and then compile is somewhat 
      painful but you're not delivering compiled code to anyone. 

      The above workarounds don't scale very well.  For reasonably
      small, clean projects they work. 

-- 
					
Lyman S. Taylor          "The Borg --  party poopers of the Galaxy. "
(·····@cc.gatech.edu)                 EMH Doctor  Star Trek Voyager. 
From: Paul Moore
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <36a9aede.12045041@news.origin-it.com>
On Fri, 22 Jan 1999 02:43:13 +0100, Sam Steingold <···@goems.com>
wrote:

>>>>> In message <·················@news.origin-it.com>
>>>>> On the subject of "Free implementations of ANSI (CLtL2) Common Lisp for Windows"
>>>>> Sent on Fri, 22 Jan 1999 13:18:20 +0100
>>>>> Honorable ··········@uk.origin-it.com (Paul Moore) writes:
> >> 
> >> I've seen some implementations, notably CLISP, but they tend to
> >> refer to CLtL1 with some of the CLtL2 features. 
>
>you must have seen a very old version.  see
>clisp.cons.org:/pub/lisp/clisp/binaries/win32

You're right I guess - I read "mostly supports" (CLtL2/ANSI) on the
web page, as "CLtL1 with some of the newer features". My mistake -
looks like CLISP is the one to try, then...

Paul.
From: Paul Moore
Subject: Re: Free implementations of ANSI (CLtL2) Common Lisp for Windows
Date: 
Message-ID: <36adc387.16043514@news.origin-it.com>
For what it's worth, I thought I should post a followup, summarising
what I found out.

Just to remind people, I was looking for a relatively complete
standard Common Lisp system for Windows, for personal use. I wasn't
too bothered about an IDE, but I did want a compiler.

In retrospect, I didn't explain what I was after too well - my reasons
for wanting a "compiler" were twofold - first, decent performance and
second, the ability to build "standalone" applications.

There were four suggestions made, two (Allegro Common Lisp and
Harlequin Lisp) are trial versions of commercial products. I was not
interested in these, as the trial versions are limited (heap size in
both cases, and the inability to build standalone apps in one - can't
remember which). I have no interest in (or budget for) buying a
commercial version (this is for hobby/personal use only, and Lisp is
never going to be my main development language), so I looked at these
no further.

Bruno Haible's CLISP system was the one I had heard of before I
posted, and it looks fairly good. It was the one I was expecting to go
for. However, I was then pointed at Corman Common Lisp
(http://corman.net/CormanLisp.html), which looks like it is exactly
what I was after. It has a native code compiler, Foreign function
interface (including MS COM interfacing), can build standalone
applications (in the sense of startup EXE + Lisp DLL + single image
file, which is a perfectly acceptable, minimal, arrangement for my
purposes). It is free for personal use, although the IDE is limited to
30-day use (actually, from my limited look at it, the IDE doesn't seem
to ofeer much).

So, to summarise the summary:

Allegro Common Lisp (http://www.franz.com/):
    Commercial demo
    Limited heap size
    No compile-file, no disassembler, no image saving
Harlequin Common Lisp (http://www.harlequin.com/products/ads/lisp/)
    Commercial demo
    Limits program size & duration
    Doesn't support application delivery
CLISP (http://clisp.cons.org/~haible/packages-clisp.html):
    Free implementation
    More an interpreter than a compiler?
Corman Lisp (http://corman.net/CormanLisp.html):
    Free for personal use (except the IDE)
    Native x86 compiler
    COM support
    My choice

Thanks for all the help,
Paul Moore