freenode/#sicl - IRC Chatlog
Search
10:08:39
beach
scymtym: Using that basic structure, I don't see how the slot name is extracted from the CONS in the CELL.
10:15:41
scymtym
beach: i have mislead you. i now think having the slot name available in CELL is not necessary. the slot itself is presented as a "→" character. you simply print/present the slot name in a column to the left of the one containing the "→"
10:16:31
scymtym
if you want to get fancy, you can make the slot name expand to the slot definition object
10:20:03
beach
I am about to serve lunch to my (admittedly small) family. I'll try this new idea later in the afternoon.
12:50:05
beach
So, when I try to present an ersatz instance, when I call (PRESENT-OBJECT STREAM) on a slot I get an error-printing object and a message from SBCL saying NIL is not a number, presumably from some kind of arithmetic. Whereas if I replace that call with a simple call to FORMAT with the value of the slot, it prints fine. Some slots have NIL as values, some have lists, some have numbers.
12:51:50
beach
But, when I get that error-printing object, there is no backtrace, presumably because Clouseau captures all errors.
12:52:54
scymtym
yes, elaboration is needed in that regard. you can tweak the HANDLE-CASE forms in protocol.lisp and formatting.lisp to get a debugger/backtrace
12:53:44
beach
I might try that. Right now, I am too tired to do any reasonable work, so I'll take a break.
14:24:42
beach
scymtym: So the "root object" is not the object passed to INSPECT when Clouseau was invoked?
14:25:22
beach
I tried (CLOUSEAU:ROOT-OBJECT CLIM:*APPLICATION-FRAME*) and I didn't get the root object.
14:29:50
beach
One more thing while I remember: ENSURE-PLACE seems to be called only from MAKE-PLACE-FORMATTERS and that function does not seem to be used anywhere.
15:01:46
scymtym
beach: i get this: https://techfak.de/~jmoringe/new-inspector-6.png . is that what you see as well?
15:06:33
scymtym
how could you even work without the automatic prime decomposition of small integers in your inspector? :)
15:09:17
scymtym
i see. i would argue that behavior is correct though, since the middle mouse button runs the command to replace the root object
15:09:47
beach
That might be true, but then the root object is NOT the one that was passed as an argument to inspect.
15:11:15
beach
I need a safe way to get to that object in every situation, and I have been setting a special variable before running the inspector.
15:11:42
beach
That works, except when the inspector is run in a separate thread, which is usually what I want.
15:15:06
scymtym
if you use just the INSPECTOR-PANE, not the whole application, the user has no way of replacing the root object, so that could work as well
15:16:34
beach
I haven't made any progress, because I was trying to clean up my code before showing it, and one of the cleanups was to replace my special variable with ROOT-OBJECT, which failed.
15:17:59
beach
My current objective is to inspect my bootstrapping objects with as little pain as possible, possibly using some kludges. Learning more about how Clouseau works is an interesting thing in itself, but I would rather put that off a bit.
15:18:58
beach
Will do. Thanks for your help so far. I'll continue this task tomorrow. Now I have to fix dinner for my (admittedly small) family.