Hi, On Wed, 13 Aug 2008 17:58:37 -0300 nubis <[EMAIL PROTECTED]> wrote:
> I recently came across plt scheme, through Common Lisp, I've never > got a chance to work with common lisp, I'm mostly a python web guy. > But when I found Scheme my first thought was "this is a 'real world' > lisp", I know I can find the differences between them STFW (already > found some of them), but I want your informated subjective opinion. > What are the biggest differences technical and culturally between > Common Lisp and Plt Scheme. Which kind of people uses each one? I'm also a Python guy and if you count in Spyce (long-dead now), Webware (ultimately turned into Python Paste), Django, Werkzeug, Nevow and the WSGI stack so I have to call byself also a web guy, I guess. Anyway: When I first started I also had the question on what to start with. One of my first issues was the documentation. Practical Common Lisp by Peter Seibel is really a big plus for choosing CL, because it shows like no other book how CL can be useful in these days. On the Scheme side there is SICP which I personally don't like too much, but maybe I'll learn to appreciate some time. The problem is that most documentation (mainly books) are outdated, e.g. "Scheme and the Art of Programming" is a nice book but for example the Macros that they describe look quite different these days because when the book was written they were not yet standardized. Peter, in case you'd like to write "Practical Scheme", add me to the is-surely-going-to-buy-it list :) If you want to do web-stuff, then CL is probably the better way as there are numerous libraries and framweorks like UnCommon Web (UCW), Hunchentoot, CL-WHO (in case you know Nevow Stan) etc. Maybe not that numerous as Python but you're not left alone with CGI-only. Scheme does only provides only HOP (runs only on Bigloo) and the stuff that PLT Scheme comes with. The feature and problem with Scheme is that it has been traditionally tiny, so it is hard to write useful code that is implementation independent so you often have a hard time to find libraries that you need (for example datetime - as far as I have seen only SCSH seems to have facilities to calculate with dates). Usually I'd recommend PLT Scheme which comes with batteries included and has a Cheeseshop equivalent called PLaneT where you can find some more libraries that might help you. On the CL side there is CLOS and the MOP, whereas on the Scheme side there are numerous smaller clones of the CLOS (e.g. STklos), numerous independent object systems and numerous implementation-bound object systems (PLT has as far as I understand two of them). But unlike CL, OOP is not that important in Scheme as the language and the community are focused more on functional approaches to problem-solving. Oh and yeah, let me mention that I think Python resembles Scheme more than CL; sometimes when I have nothing useful to do I start seeing things that are identical in Python and in Scheme. Common Lisp has the great SLIME extension, whereas Scheme has DrScheme which is also a reasonably good Scheme editor with some nifty features. Now, the conclusion is... use what fits your mind better. Maybe I am talking too much about it, I should better try to continue building some real programs :) regards, Marek _______________________________________________ Gardeners mailing list [email protected] http://www.lispniks.com/mailman/listinfo/gardeners
