. . .
> I was hoping that the examples I requested would be examples of  
> particular control constructs or extensions to the language's syntax  
> and semantics.  Though I admit that such things are possible in lisp,  
> I suspect that their utility is minimal.

As to utility, quite the contrary, I think.  Offhand I can think of the
screamer package for Common Lisp, which provides non-deterministic
mechanisms for use in backtracking applications.  For a while in the
80's there was practically a cottage industry implementing various
flavors of Prolog and other Logic Programming languages in Lisp; one
notable example was LogLisp.  I think many of the more advanced
constructs in CL were originally macro extensions to the earlier lisps;
e.g. structures, objects and classes, the LOOP macro, streams and
iterators, generalized setters and getters.

Actors, which was one of the ancestors of OOP, was first as a Lisp
extension.  In the AI hayday of the mid-80's most of the expert system
shells, providing forward and backward chaining mechanisms, frames and
semantic nets, and object-centered and data-driven programming, were
originally implemented as packages integrated into Lisp.

All of these made non-trivial extensions to Lisp, and all were of
arguably great utility.

 -- Bill Wood
    [EMAIL PROTECTED]


_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to