[Openmcl-devel] bad impressions to Lisp newbies

Andrew Shalit alms at clozure.com
Fri Apr 24 08:58:32 PDT 2009

Alex --

thanks for sharing this feedback.  We all use CCL so much, it is easy  
to forget what things look like for a new user.

Are the first two issues problem with the CCL Wiki?  As others have  
pointed out, there are DMG files and these do include the pre-built  
IDE.  Did the CCL website point you to a download location which did  
not include these?

As for the fact that the example files didn't work in the release, I  
interpret that as a process bug within Clozure.  We now have a good CL  
test suite which we now run as part of our development and release  
cycle.  But I don't think we systematically test the examples when we  
package up the release.  We should.

In the mean time, if anyone wants to spend some time cleaning up the  
examples to work in 1.3, that would be great.  I think that would be a  
great way the user community could help improve CCL and make it more  

On Apr 24, 2009, at 2:53 AM, Alexander Repenning wrote:

> I wanted to show to a non Lisp programmer why Lisp is good in general
> and Clozure CL in particular. Things went, lets just say, rather
> terrible. Here is rough "transcript" of the story (A: for Alex, N: for
> Lisp newbie)
> Chapter 1:  Getting CCL to work
> =========================
> The need to install via SNV did not go over well.
> N: Why is there non disk image?
> A: Oh well, that is just how things are, Now we need to built the IDE.
> N: built the IDE ? Huhh, why?
> A: Oh well, that is just how things are
> Welcome to Clozure Common Lisp Version 1.3-r11936 (DarwinX8664)!
> ? (require :cocoa-application)
> 'make install' of AltConsole.app failed:
> N: Ouch.. what does that mean.
> A: Not sure, this could be bad. This is about AltConsole.app
> N: what?
> A: never mind
> Now we try the same thing for the 32bit version. Same problem. Worse,
> both the application icons carry the scary looking architecture not
> supported badge. That is usually the sign that this will not work at
> all. Strange, the computer is a brand new MacBook Core 2 Duo running
> 10.5.6. Hmmmmm....   Trying to launch the apps anyway. Listerner comes
> up. We must be OK then.
> Chapter 2: from bad to worse. Running examples is Lisp is easy... OR
> is it?
> ==========================================================
> The beauty of Lisp that you can always find some easy to run examples.
> Load the file, eval the sample code, done...
> I go to the example folder and pick them randomly, really.
> - Lets try some exciting OpenGL 3D code: opengl-ffi.lisp  seems to
> load, beach ball, crash, uh oh.
> - something simpler then: finger.lisp this should be simple. It loads,
> yeah! Now we eval the "for testing try" part
> (finger "idsoftware.com")
>> Error: Connection refused (error #61) during socket creation or
> nameserver operation in connect
>> While executing: SOCKET-ERROR, in process Listener(6).
>> Type :POP to abort, :R for a list of available restarts.
>> Type :? for other options.
> 1 >
> oh well
> - how about WebKit.lisp, loads but then when trying to make a window:
>> Error: Objective-C runtime exception:
>>       objc_object* -[WebView initWithFrame:frameName:groupName:]
> (WebView*, objc_selector*, NSRect, NSString*, NSString*) was called
> from a secondary thread
>> While executing: CHECK-NS-EXCEPTION, in process Listener(6).
> hard to believe but it gets worse:
> - addressbook.lisp does not load at all
>> Error: Too few arguments in call to #<Compiled-function FAKE-
> CFBUNDLE-PATH #x8493E96>:
>>       1 argument provided, at least 3 required.
>> While executing: FAKE-CFBUNDLE-PATH, in process Listener(6).
> - mswin.lisp tries to load a .dll Ohhh this is a window program. Why
> is this in the darwin distribution?
> We give up.
> Conclusions
> ==========
> Draw you own conclusions but this is a true story and it does not have
> a happy ending. Newbie walked away. I guess one may claim that for us
> old Lisp hackers this would not be much of  a problem. Hey, we do not
> really need these examples, we can find a way to build, etc. I am sure
> there are good explanations why the things happened that I have
> described above. Nonetheless, it is hard to image how one could have
> left a worse impression on a new potential Lisp user. I mean, NOTHING,
> not a single example that we tried worked.
> Do not understand me wrong. I am not bashing CCL. On the contrary. I
> really do appreciate the work that goes into it. I would like for CCL
> to succeed but this is frustrating. Here are some more constructive
> ideas:
> - sources and svn access are great but please also do give us .img
> files of stable versions
> - example files are appreciated but if they do not work for whatever
> reason it may be better to move them into some kind of untested
> examples folder
> I still think that Lisp, if packaged up the right way (e.g., open
> source, cross platform: OpenGL + Cocoa) Lisp/CCL could become a great
> teaching tool which could actually attract, imagine that, NEW Lisp
> programmers in graphics and HCI courses. The thing most disturbing to
> me is not just how far away we are from that  point right now but that
> most people do not seem to care.
> Alex
> Prof. Alexander Repenning
> University of Colorado
> Computer Science Department
> Boulder, CO 80309-430
> vCard: http://www.cs.colorado.edu/~ralex/AlexanderRepenning.vcf
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> http://clozure.com/mailman/listinfo/openmcl-devel

More information about the Openmcl-devel mailing list