freenode/#lisp - IRC Chatlog
Search
5:04:17
aeth
Technically, other editors and IDEs can write their own SLIME-like thing using swank, but nearly everyone programs CL in Emacs+SLIME.
5:05:35
tko
so the temporary standard object would be like an object that contains all the values of your structure (or less) and that is organized in a way thats easier to read or interpret?
5:06:30
aeth
It would combine all of the pieces of data that represent an entity into one object. Which would be 1/2500 of the data structure, if it's filled to the arbitrary constant cap I set for it.
5:09:26
aeth
I think Bike's alternative approach would be to define methods that swank uses that are ultimately used by the SLIME inspector, i.e. create new things that swank will dispatch on as various relevant defmethods
5:09:40
nyef`
aeth: Or you could "just" declare for SBCL and unportability and implement an INSPECTED-PARTS method.
5:10:54
Bike
i mean, with the whole novel clos thing you're still relying on the inspector working in some particular way with slots
5:11:21
aeth
Would that work, though? I want to inspect one particular ID stored in a large data structure. A simpler example would be e.g. inspecting one node in a tree by providing the tree and what to look up into the tree.
5:13:11
aeth
But since it's only used for debugging it doesn't need to be efficient. I could just allocate an object from a query and then inspect that. Although then if I'm inspecting it live I'd have to do some trick to avoid filling the heap.
5:15:08
aeth
Bike: Hmmm... Or... I could be really lazy and make an object that encapsulates two objects...
5:15:46
Bike
so that you can take advantage of all the standard customization facilities that arne't real, makes sense to me
5:16:24
aeth
Bike: however non-standard things are, my own solution would be even more non-standard and even less supported
5:17:16
Bike
well, my main advice is to try something out rather than write a dissertation over the course of two hours, i'd do well to remember that
5:24:10
dmiles
aeth: well i am glad that I was correct in imagining that you were copying a reference setf-able place
5:29:36
aeth
dmiles: Well, I'm making local bindings to arrays (which does not copy the arrays themselves), and then using symbol-macrolet over accessors that are too complicated for with-accessors (such as aref or my custom array-row accessors)
5:31:40
dmiles
you know for these synthesized objects you are thinking about there is a system for synchronising them.. https://bitbucket.org/tarballs_are_good/cl-locatives
5:32:37
dmiles
you point the object at your proxy and your real thing.. when your proxy changes.. so does the real thing
5:33:03
earl-ducaine
Out of fairness to other CLs and the libraries in the Quicklisp repo, the problem that I described as 'dependancy hell' (for ccl) was only that I was using the wrong CLX library. Once I installed a compatible one using ASDF everything else worked.
5:34:28
aeth
with accessors is the thing that can turn (foo some-object) into foo, so you can (setf foo 42) and it's really (setf (foo some-object) 42)
5:36:10
dmiles
hrrm the package i was thinking of was actually was more in depth.. pjb suggested it to me the other week)
5:36:47
aeth
I took the recommended way of implementing with-accessors and modified it to work on (aref a 42) (aref a 42 0) and my custom array row accessors
6:10:05
aeth
dmiles: proxy with-accessors? as in an object that can call with-accessors (or, actually, with-entity-accessors in this case) on itself every second or something, to keep a somewhat up to date picture of what's going on? Could become a threading mess, though.
14:23:04
ebzzry
I have `sbcl --load quicklisp.lisp --eval '(progn (quicklisp-quickstart:install) (let ((ql-util::*do-not-prompt* t)) (ql:add-to-init-file) (sb-ext:quit))'` but it doesn’t wokr.
14:32:04
scymtym
ebzzry: try sbcl --load quicklisp.lisp --eval '(quicklisp-quickstart:install)' --eval '(let …)' --quit