betz@decvax.UUCP (David Betz) (11/22/83)
I'm soliciting opinions on what people think is a reasonable list of functions for a subset of LISP to run on micros. I intend to publish an article containing a simple implementation of LISP. I expect this version to be used by people who are not familiar with LISP and want to learn more about it. I would like the subset to be usable, but it must also be small enough for a magazine article (probably DDJ). I am willing to publish the article in several parts, but I want to make sure that the first part contains enough of the interpreter to allow the user to start experimenting immediately. The subsequent articles would add functions to the base interpeter. An obvious minimal LISP would contain the five basic functions: car cdr cons atom eq I'm looking for a more reasonable subset than that. I'm looking for a subset that would make learning LISP a pleasant experience. I will obviously provide all of the basic arithmetic, logical and relational functions. Also things like: defun set setq quote cond lambda eval apply equal rplaca rplacd assoc member What about all of the map functions? What about the cxr cxxr ... functions? Do I really need prog? Anyway, you get the idea. I want a list of functions for a minimal usable version of LISP. I'd like this to be implementable in C on a CP/M-80 system with 64K of memory. I don't expect it to be fast or there to be a lot of memory left for list space. (I'd like at least 4000 cons cells of list space though) Please send any replys to me directly. I will distill them into a single subset and post it to the net. Thanks, David Betz decvax!betz