|
From: raptor on 7 Feb 2006 13:30 hi, is there a CLISP reference card ?
From: Pascal Bourguignon on 7 Feb 2006 15:07 "raptor" <rootcho(a)gmail.com> writes: > is there a CLISP reference card ? http://clisp.cons.org/impnotes/ http://www.lisp.org/HyperSpec/FrontMatter/index.html -- __Pascal Bourguignon__ http://www.informatimago.com/ Until real software engineering is developed, the next best practice is to develop with a dynamic system that has extreme late binding in all aspects. The first system to really do this in an important way is Lisp. -- Alan Kay
From: raptor on 8 Feb 2006 18:56 Sorry i meaned Reference-card, not Referrences. :)
From: Pascal Bourguignon on 8 Feb 2006 20:36 "raptor" <rootcho(a)gmail.com> writes: > Sorry i meaned Reference-card, not Referrences. :) And I bet you meant Common Lisp, not clisp too. But when the whole CLHS is only: 18M /local/html/local/lisp/www.lispworks.com a drop in the ocean, even for a PDA... I don't see what use a paper "reference card" would be. It'd be slower to access, and harder to read. Remember there are 972 symbols exported by the COMMON-LISP package, some with several meanings. It's better to browse CLHS directly from emacs (be it via HTTP or using a ".info" version) than to scan manually a reference card. Also, if you'd need the list of parameter of functions, or other syntactic hints, slime gives them to you for free, and dynamically, while you type your code in emacs. You can use the following to dump the list of all symbols exported from CL -- instant reference card --. (defun is-type-p (symbol) (handler-case (prog1 t (typep t symbol)) (error () nil))) (defun is-class-p (symbol) (ignore-errors (find-class symbol))) (defun list-all-symbols (package) (sort (loop for sym being each external-symbol of package when (and (fboundp sym) (not (or (special-operator-p sym) (macro-function sym)))) collect (list sym (if (typep (fdefinition sym) 'generic-function) "Generic Function" "Function")) when (macro-function sym) collect (list sym "Macro") when (compiler-macro-function sym) collect (list sym "Compiler Macro") when (and (boundp sym) (constantp sym)) collect (list sym "Constant") when (and (boundp sym) (not (constantp sym))) collect (list sym "Variable") when (special-operator-p sym) collect (list sym "Special Operator") when (and (is-type-p sym) (subtypep sym 'condition)) collect (list sym "Condition") when (is-type-p sym) collect (list sym "Type") when (is-class-p sym) collect (list sym "Class") when (not (or (fboundp sym) (boundp sym) (special-operator-p sym) (compiler-macro-function sym) (is-type-p sym) (is-class-p sym))) collect (list sym "Nothing Specific")) (function string-lessp) :key (function car))) (dolist (x (LIST-ALL-SYMBOLS "COMMON-LISP")) (print x)) -- __Pascal Bourguignon__ http://www.informatimago.com/ This is a signature virus. Add me to your signature and help me to live.
From: Tayssir John Gabbour on 8 Feb 2006 20:56 raptor wrote: > hi, > is there a CLISP reference card ? There's a quickref in the back of Paul Graham's _ANSI Common Lisp_. Tayssir
|
Pages: 1 Prev: How to do fast matrix-multiplication? Next: How to sum a list? |