Women in Technology

Hear us Roar



Article:
  Smalltalk for Everyone Else
Subject:   Other language with image
Date:   2006-09-23 14:36:42
From:   wanorris
Response to: Other language with image

Is that a part of the common lisp standard, or is it specific to SBCL?


Either way it's cool, I was just wondering.

Full Threads Oldest First

Showing messages 1 through 2 of 2.

  • Re: Other language with image
    2006-09-28 10:58:51  whartung [View]

    This is a common meme of all of the major Common Lisps. Emacs is a bit of an exception here, looking more like the perl/python/java model of having a bunch of discrete compiled modules that are registered with the system and loaded as necessary.

    But the image nature of both CL and Smalltalk is very important, and quite different from the "rebuild it all from scratch" methodology of most programmers. With the image, you essentially have not only your program, but the entire system loaded and available to tweak and change.

    For example, unlike, say, Java, in Smalltalk if you want to add a new method to a system class (say, oh, Object or String), you can easily just browse over and add a method. Voila, instantly every object or string in the system has that new message. No compiling or building or relinking or reloading. It just Is.

    Obviously, this can lead to trouble if you do something silly -- with great power come great responsibility, but Smalltalks change management mechanism helps mitigate such disasters.

    One could also argue that many Forth systems are image systems, they just tend to be much much smaller than ST or CL.
    • Re: Other language with image
      2006-09-29 10:28:23  prand [View]

      Lisp has images, but as far as I can tell, most lisps haven't created a self-contained, graphical, introspective IDE in the style of smalltalk. I've wondered why.

      For one thing, graphics and GUIs are add-ons to lisp, rather than built-in like smalltalk.

      Also, most lispers seem to be very adept at Emacs, which is very powerful, but hard to learn well, and very keyboard-intensive.

      I've had daydreams about creating a smalltalk-style environment for lisp, either by implementing a lisp in smalltalk, or by recreating a lisp version of the smalltalk libraries and frameworks. Sounds like a LOT of work, but what fun!