freenode/#sicl - IRC Chatlog
Search
14:36:16
beach
Why does SICL have a (SETF ACCESSOR-METHOD-SLOT-DEFINITION) function? The MOP doesn't mention any slot writer as far as I can tell.
14:39:00
beach
OK, I think I figured out how to avoid satiation altogether. Therefore, this idea of having the :TYPE slot option influence the method specializer is probably no longer interesting, at least not for the initial reason I thought about it.
14:42:12
beach
There seems to be around 80 or so functions (generic or not) in the MOP. SICL defines a few more, of course, and there are the ones from the Common Lisp HyperSpec, like make-instance, initialize-instance, shared-initialize, etc. etc.
14:46:15
beach
I think I need to go thorough each and every one of those to see in which environment it ends up, which other functions call it, and which other functions are called by it.
14:58:08
shka_
so you could build queries like: please give me all X where X is a class that happens to be superclass of Y where Y is something that beach created
17:58:31
jcowan
There's a reference manual for Masterscope in http://www.softwarepreservation.org/projects/LISP/interlisp-d/3100186-Interlisp_Oct83.pdf on physical pages 351-372. Note that Interlisp did not have classes, but this should give you an idea of what can be done. (Warning, huge 800+ page scanned and unsearchable PDF, may be very slow to load in your PDF viewer.)
18:03:32
jcowan
Note that Masterscope worked entirely by reflection on the contents of memory without referring to any files. This may not be feasible in a modern CL system.
18:04:54
jcowan
In particular, though Interlisp compiled functions, it (like Smalltalk) ensured that the current source was also available at runtime.
22:59:53
fiddlerwoaroof
Because it means that source files are irrelevant: at best, they are temporary scratchpads to work on a particular subset of the syste,.
23:00:55
fiddlerwoaroof
An example workflow could be: query for a set of definitions relevant to the task you need to do, generate a temporary buffer with all the resulting source code, change the buffer + recompile it