From: raptor
Subject: clisp reference card ?
Date: 
Message-ID: <1139337011.124648.160910@g43g2000cwa.googlegroups.com>
hi,
is there a CLISP reference card ?

From: Pascal Bourguignon
Subject: Re: clisp reference card ?
Date: 
Message-ID: <87ek2fnda2.fsf@thalassa.informatimago.com>
"raptor" <·······@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
Subject: Re: clisp reference card ?
Date: 
Message-ID: <1139442966.828003.277400@o13g2000cwo.googlegroups.com>
Sorry i meaned Reference-card, not Referrences. :)
From: Pascal Bourguignon
Subject: Re: clisp reference card ?
Date: 
Message-ID: <878xsljotw.fsf@thalassa.informatimago.com>
"raptor" <·······@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
Subject: Re: clisp reference card ?
Date: 
Message-ID: <1139450198.515541.87410@g47g2000cwa.googlegroups.com>
raptor wrote:
> hi,
> is there a CLISP reference card ?

There's a quickref in the back of Paul Graham's _ANSI Common Lisp_.

Tayssir