>> Has anyone on this list been to the mountaintop >> and been permanently transformed by Lisp? Any >> advice for a re-learner like me, as to books, >> classes, resources? I can't go take a class at MIT >> -- I have to do it here. :-) I've studied a bit of Scheme, and as a 19-year Emacs user know Emacs Lisp well enough that I've written some mode packages and many convenience functions. Somewhere in this thread -- I seem to have flushed the original -- someone asked if one would use Emacs to edit Lisp. I can't think of any editing system better suited to it, because after all Emacs is basically an Emacs Lisp interpreter, completely programmable, with its built-in functions ideally suited for problems related to whacking text -- in every context, whether that means coding in any programming language, writing email, running shell commands, and so on. While Emacs Lisp is much different from either Common Lisp or Scheme, the syntax and methodology of these languages are essentially the same. It doesn't take long to absorb the Lisp way of doing things, just from using Emacs on a day-to-day basis, which is quite different from languages like C and Perl. I've never studied Common Lisp, though it's still very much alive and well and of great interest to me. If you've done much searching on job sites, looking at job descriptions that require various programming skills, you will rarely ever see Lisp listed as a requirement these days, although it's suitable for system programming. One of my closest friends teaches both operating system design and Lisp at University of Ohio in Columbus. He told me a couple of years ago that he designed a semester project for his students to write an operating system from scratch that boots directly into Emacs. Now that would be fun to see! He never followed through on it, though. Scheme is an amazing strain of Lisp -- pure as new-fallen snow. Its syntax can be learned in minutes, including by persons who have never programmed in their lives -- assuming they are of normal intelligence and attuned to thinking about logical systems. In 1991, while at Motorola, I had brief occasion to work with some third party vendor software, including a commercial implementation of Scheme, so spent some time getting familiar with it. The number one source book on the subject is "Structure and Interpretation of Computer Programs" by Abelson, Sussman, and Sussman. During that period of interest the Government Electronics Group at Motorola had an Artificial Intelligence group working with this. They invited Harold Abelson, who teaches at MIT, to give a most interesting lecture, which I attended. He began by explaining that Scheme was created at MIT (mostly by his book partner Gerry Sussman, with Guy Steele, who is the primary creator of Common Lisp -- originally defined in two or three pages extremely arcane logical calculus) for the purpose of teaching programming to first year students in computer technology at MIT, where they learn both hardware and software. (So they don't major in either Electrical Engineering or Computer Science. I don't know what they call it.) Some of their incoming students at that time, as talented as they were, still had little or no hands-on experience with computers. They needed a language that was extremely simple to use, solid as a rock, and that would not require students to have to deal with stuff like compilers, learning chapter after chapter of syntax and rules, editing, and so on. They wanted them to be doing useful programming by the end of the first class -- and they were. Abelson demonstrated by means of some very plain examples how extremely simple functions can be used to layer systems of rapidly increasingly complexity -- which of course is a fundamental tenet of good programming. You start with functions that return the fibonacci series of a number and before you know it you're writing robotic controllers. I'm not aware, though, of much application software that has been developed using any flavor of Scheme. (I'm sure there is some.) At Motorola we did have a state of the art inventory control system written in a commercial implementation of Scheme that was used by the people on assembly lines to construct computers. I'm sure it soon became obsolete and replaced by something web browser driven written in a high level language such as Java. Not long after the Abelman lecture, Motorola GEG sponsored a three-day class in Scheme -- not something, as noted above, that draws attention on a resumé or is of much day-to-day use, but I was able to take it and had enormous fun. It was taught by two of the heavies in the world of Scheme from academia -- George Springer and Daniel Friedman, both authors of important textbooks on the subject, and professors at University of Indiana. (The Abelson/Sussman book, while definitive, assumes a fair level of competency with calculus on the part of its readers after about the first 50 pages, as its examples are centered on functions that solve complex equations. Springer and Friedman's books are a little more down to earth.) Fifteen years later, I've had little or no occasion to do anything with any form of Lisp other than Emacs Lisp, but it is certainly an enjoyable language to play with, and not difficult to get into. -- Lynn --------------------------------------------------- PLUG-discuss mailing list - PLUG-discuss@lists.plug.phoenix.az.us To subscribe, unsubscribe, or to change you mail settings: http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss