freenode/#lisp - IRC Chatlog
Search
1:40:40
whoman
hmm, i am 1.3.17 , not much has changed since .16 -- i cant imagine whats wrong ! could you lisppaste a more full error report?
1:50:10
emaczen
whoman: What details do you want? The restart is just a condition of type UIOP/LISP-BUILD:COMPILE-FILE-ERROR
1:57:54
emaczen
So in this file there is a (destructuring-bind (key val) ....) -- it is telling me that key and val are in a package called :collections, which is one of my own packages which does have reader-macros
1:58:13
emaczen
the question is, why are these two variables saying that they are in my :collections package?
2:08:30
whoman
ah well. it seems your personal/custom code is interfering. i am not sure why you havent considered that
2:09:58
emaczen
for some reason, I am getting a READ error and the code is from one of my own read-macros
2:11:44
whoman
hmm. i am not wise enough to understand the full scope of resolving symbol names or read tables
2:12:21
whoman
thats why i just say "remove ur own code, get parenscript happening, then fix ur code so its not poisoning the rest of the system" as an intuition guides me
2:30:32
Bike
Wait, wait. Have you done something like (setf *readtable* my-readtable) (ql:quickload :parenscript)?
2:33:29
emaczen
Bike: I commented out my reader-macro, quickloaded :parenscript and now it all seems to work.
2:33:59
Bike
i mean if your readtable is in force, the loader will try to use it. it doesn't snap back to the standard readtable or anything.
2:34:59
emaczen
In my .macros files of a system I usually do a (setf *readtable* (copy-readtable nil))
2:36:15
Bike
compile-file will rebind it, but if you're setting it outside of compile-file it'll stick
2:36:36
Bike
for example, if you had (eval-when (:compile-toplevel :load-toplevel :execute) (setf *readtable* ...))
3:03:09
emaczen
Bike: Is output supressed from the terminal? It appears as if nothing happens, I just get another command line prompt.
4:00:20
emaczen
I'm getting a "No more immobile pages available" error in my SBCL *inferior-lisp* buffer -- any ideas?
4:07:25
emaczen
whoman: I am using hunchentoot, but I don't see why this would then work on CCL but not SBCL
4:08:44
whoman
well. "immobile pages" doesnt sound like anything about CCL, SBCL, or emacs or slime. so it is probably something about hunchentoot, which i dont know much of
4:12:05
whoman
hmmm thats just what i was thinking. i was hoping it was reflecting a builtin functionality
4:12:05
beach
whoman: You can then use SHOW-CLASS-SUBCLASSES and it will draw a nice DAG of the structure.
4:19:56
whoman
sorry i wasnt ignoring you beach , i was trying to get this to work : https://www.common-lisp.net/project/slime/doc/html/Xref-and-Class-Browser.html
4:20:51
emaczen
whoman: I have this in my emacs init file: (setq slime-contribs '(slime-fancy slime-xref-browser slime-sprof slime-asdf slime-company))
4:25:03
whoman
does it matter if (describe 'classname) gives back "Not yet finalized"? not sure what that means.
4:26:30
emaczen
whoman: the bad part about "slime-browse-classes" is that it doesn't show a nice DAG of a node having two parents as two arrows going into the node.
4:27:15
whoman
ok, class precedence list successfully computed (had to fix that.), but empty tree UI still
4:29:44
whoman
well. generating an image is not that much work if i really need it, or multiple emacsUI tree views, or just textually
4:32:19
whoman
okay i was doing it wrong. it totally works now. i will let you guys know if i come up with anything for DAG-style multiple parents display
4:42:14
emaczen
jasom: I want to compile my code and just copy a lisp image to an AWS instance and then run that image, but I don't think it would run on that machine
4:42:40
jasom
emaczen: it should run just fine on that machine, make a standalone executable, and ensure the DLL versions are compatible
4:45:27
emaczen
jasom: I'm struggling to get CCL to do ccl:save-application -- I was getting my server to run, but now I'm not getting that far and I haven't really done anything differently... How can I get logging messages?
4:49:59
jasom
uiop *also* includes hooks for doing various things when the image gets loaded, which is super nice because every implementation does that differentl
4:54:49
jasom
whoman: originally uiop was just utility functions scattered through the asdf codebase, then they were put into their own library
5:20:09
beach
whoman: You are not allowed to define a class with a name that is a symbol in the COMMON-LISP package.
5:22:35
jasom
emaczen: if I had to guess I would say that's a logical pathname host defined by your implementation and, as such, is non-portable
5:32:47
emaczen
how can I debug an executable program? It just isn't working like it does in the REPL for some reason...
5:41:43
emaczen
the first action that my toplevel-function does is loads some 20MB files into memory
6:02:53
emaczen
Alright, I have a feeling these two issues are connected. With SBCL I get the "No more immobile pages error" from LDB when I try to load this 20MB file into memory. With CCL everything works fine in the REPL, but when I build an executable and try to run my program, it never prints out my (format t ....) that occurs immediately after loading the file. It does print a message immediately before it begins loading this file -- any
6:48:55
emaczen
pillton: load time? I did set the toplevel-function, it is called but it seems to "hang" somewhere
6:52:40
pillton
"it never prints out my (format t ....) that occurs immediately after loading the file"
6:53:55
emaczen
pillton: to clarify, my toplevel-function is loading the 20MB file and after it finishes, it is supposed to evaluate a format form.
9:28:50
flip214
hmmm, PLACEs are not first-order types.... and can't be passed to eg. (MAPCAR #'PUSH ...) [yeah, that specifically wouldn't make much sense.]
9:41:40
beach
A place is more like a form. To obtain the contents of the place, the form is evaluated. To alter the contents of the place, the form must be translated into a different form which, when evaluated, alters the contents of the place.
9:45:54
beach
By default, that translation is done by turning it into a SETQ (if the form is a variable) or into `(FUNCALL #'(SETF ,(CAR FORM) ...)) if the form is a CONS.
9:47:41
beach
But, when the form is a CONS, it might have its own rule for generating a form for altering the place, so that for example (CAR X) turns into (PROGN (RPLACA X value) value).
9:56:27
flip214
still, a class PLACE wouldn't work... it'd need a SYMBOL-MACROLET to fetch the value, but how would I provide a SETF?
10:05:49
beach
It's a bit complicated because it has to avoid evaluating the same form multiple times.