Prev: my understanding of an algebra library for lisp
Next: Which is the best implementation of LISP family of languages for real world programming ?
From: bolega on 10 Jun 2010 16:14 Which is the best implementation of LISP family of languages for real world programming ? http://wiki.alu.org/Implementation Kindly pick one from commercial and one from open-source . The criteria is : libraries, gui interface and builder, libraries for TCP, and evolving needs. Please compare LISP and its virtues with other languages such as javascript, python etc. I put javascript in the context that it is very similar in its architecture (homoiconic ie same representation for data-structures and operations, ie hierarchical, which means nested-lists <=> n-ary tree <=> binary tree <=> linked-list <=> dictionary <=> task-subtask, and implicitly based on what C calls pointers, and at machine level the indirect addressing of memory) to lisp family. I put python in the context that it has the most extensive libraries and shares the build-fix virtue of lisp highlighted by Paul Graham in his books. Python is touted for its rapid prototyping of guis. It syntax enforces stable format which guards against programmer malice or sloppiness - so that there is a certain level of legacy code readability. Both have eval but not clear what is the implementation efficiency to justify the habit of excessively using it. Certainly, lisp/scheme are excellent for learning the concepts of programming languages due to its multi-paradigm nature and readily available code of the elementary interpreter. Is there an IDE for these lispish-scheming languages ? Is there quality implementation for Eclipse ? Emacs pre-supposes some knowledge of these so that newbie can get stuck. Also, emacs help is not very good. Is there a project whereby the internal help of emacs (analogous to its man pages) are being continuously being updated AND shared ? I have never seen updates to the help. Perhaps, the commercial people are doing it, even from the posts of the newsgroups, but the public distros or these newsgroups have NEVER made such an announcement. Explanations integrated into the help are more important than the books - its like the wikipedia incorporated into emacs. Is there support for the color highlighting of the code by hovering as on this page ? http://community.schemewiki.org/?lexical-scope Which book/paper has the briefest minimal example of gui design along XML nested/hiearchical elements with event-listeners for lisp/scheme ? Thanks
From: bolega on 10 Jun 2010 19:33 On Jun 10, 2:51 pm, p...(a)informatimago.com (Pascal J. Bourguignon) wrote: > bolega <gnuist...(a)gmail.com> writes: > > Which is the best implementation of LISP family of languages for real > > world programming ? > > What's the real world? > What's real world programming? > > -- > __Pascal Bourguignon__ http://www.informatimago.com/ I mean ordinary people, who may want to do things with their computers for scripting, tasks that python can do, possibly when a language is weak and another has library, then use some function from there even if it is compiled. A set of work around techniques will always be needed. Things that perl does, python does, bash does etc. things like java applets for various animations etc. possibly some unoptimized but fast protyping of parsers to fix files or convert formats etc. a wide array of user tasks. Sorry, I dont intend any flame wars ... as a general statement ...
From: fortunatus on 10 Jun 2010 21:31 On Jun 10, 8:24 pm, p...(a)informatimago.com (Pascal J. Bourguignon) wrote: > What applets? Have you ever seen a java applet? Last time I saw one > it must have been fifteen years ago. I have a Java applet that I use for GUI front end on some of my Lisp work - when HTML forms and pages aren't enough because I want to push to the display. It reads strings from a TCP socket connected back to the Lisp application. I used the Java introspection features to interpret limited Lispy syntax: j-exp --> (<thing> <argument-or-j-exp>) <argument-or-j-exp> --> <argument>* <argument-or-j-exp> --> j-exp where the <thing> is some member subclass or member function or variable. If there is an argument list, then if a member function named <thing> is found it called with the arguments, which must be constants. If there is no member function of name <thing>, then if there is a member scalar variable of name <thing>, then the first <argument> is coerced and assigned to that member variable. On the other hand, if there is a nested j-exp, then <thing> is taken as a member class variable, and the process starts over with that variable as context. You subclass this applet to add GUI to it, and you better like Java. Any GUI listeners in the applet have prints that send similar string expressions back to the Lisp app, which is also a subclassed from a simple prototype, and the methods are called with the instance as the first argument. Instances are generated as web browsers connect to startup routines published via paserve. N e e d l e s s t o s a y , the Java introspection side, along with the parsing of the expressions (which is about as easy of a grammar as you can get), took about 3 days, while the Lisp side took about 10 minutes to write the 5 lines needed for READing and calling APPLY. (So far I avoid JavaScript - so this whole qooxlisp thing, I don't know. Although I understand no need to actually write JavaScript, but still I try to avoid running it in the browser. But I don't know, cells sounds good to me, so this qooxlisp thing might end up changing my ways...)
From: Elena on 11 Jun 2010 11:48 On 10 Giu, 23:33, bolega <gnuist...(a)gmail.com> wrote: > I mean ordinary people, who may want to do things with their computers > for scripting, tasks that python can do... Lisp is not for ordinary people, Python is.
From: Chris Hulan on 11 Jun 2010 14:03
Haven't used it but Racket (http://racket-lang.org/) looks to be a new and improved Scheme |