freenode/#lisp - IRC Chatlog
Search
18:46:06
pjb
asarch: like greek atoms, lisp atoms can be divised: (ldb (byte 3 4) 123456) #| --> 4 |# (aref #(1 2 3 4 5) 2) #| --> 3 |# etc.
18:48:26
pjb
function names are symbol (or lists of the form (setf foo)); variable names are symbols, macro names are symbols, special operator names are symbols, but also: tags, class names, type names, and my brother-in-law.
18:49:09
pjb
asarch: dynamic/lexical is orthogonal to local/global (only CL provides operators to create only dynamic global, but it's trivial to implement lexical globals using deine-symbol-macro).
18:49:49
pjb
asarch: perhaps you'd want to read the tutorials at http://cliki.net/Online+Tutorial first?
19:00:20
asarch
I read in the "Gentle Introduction to..." book that you cannot actually divide an atom
19:15:08
pjb
asarch: in that environment, conses were not atomic, since you could split the car and the cdr, but the other were atomic.
19:15:57
pjb
asarch: however, vectors and other structured objects were introduced later. They are not atomic. But they're not CONS cells, so they're still called ATOMs, because (defun atom (x) (not (consp x))).
22:28:06
plertrood
Is there a way I can get a list of all classes that have been defined with a given metaclass?
22:29:10
Bike
i guess you could look through all subclasses of standard-object, but i don't recommend that
22:30:27
plertrood
I'm sure I read in AMOP that there was a way to do this.. but damned if I can find it..
22:31:06
Shinmera
You could potentially do something with make-instances-obsolete & update-instance-fore-redefined-class, but I think the latter is only called lazily, which means when an instance is accessed.
22:34:19
plertrood
If it is the one i am thinking about, then validate superclass only gets called once an instance of that class is instantiated.
22:37:26
plertrood
It did surprise me that validate-superclass wasn't being called when I compiled a class with that metaclass.
0:59:06
billitch
svn: E170013: Unable to connect to a repository at URL 'svn://common-lisp.net/project/cl-irc/svn'