On Fri, Dec 10, 2010 at 12:43 AM, javajosh <javaj...@gmail.com> wrote: > It does beg the question, though: what is a reasonable bare minimum > function set that a real-life lisp would require?
I think different people might give different answers to that. The academic computer scientist is likely to consider lambda, the function-call operator, nil, if, and eval to suffice. After all those suffice for anything you can express in lambda calculus. A Lisper interested in Lisp hacking as an end in itself will want to add cons, car/cdr or first/rest, =, cond, etc. The application programmer is going to additionally require FFI with, particularly, GUI libraries, not to mention various forms of disk, networking, keyboard, and mouse I/O. The systems programmer is going to additionally require being able to get at the bare metal and run tight, efficient, non-interpreted code in kernel mode. Ultimately I suppose it hinges on what someone means by a "real-life" Lisp. I'd say the application programmer's needs are probably th best answer there, since Lisp hacking for its own sake and academic computer science are more mathematics than "real-world", and systems programming can be accomodated by a combination of C and a Lisp with some kind of FFI. (Clojure as the Lisp requires Java as well, and Clojure and C calling each other indirectly via Java and JNI as a go-between.) -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en