freenode/#lisp - IRC Chatlog
Search
14:54:33
bqv
Ok, thought I could somehow have the load-system as part of the toplevel function, but no. So, say I have a system I wanted to create an image with, how could I do that, if it loads libraries?
14:57:01
phoe
usually you can close the libraries as a part of exit hooks and reopen them as a part of reopen hooks
15:48:25
beach
lotuseater: Normally, you would give parameters to a FORMAT directive as literals in the string itself, but occasionally, you want an argument to FORMAT to provide the parameter.
15:51:55
eta
hmm, what's the LOOP directive for iterating over every element in an arbitrary-dimensional array
15:52:28
_death
there is none.. you can use array-row-major-index and array-total-size or a displaced array
16:00:59
_death
that way you can pass a control string and its respective arguments.. you can also nest it
16:06:31
_death
also yes, FORMAT can take a function as a control string.. (format t (lambda (stream &rest args) (prin1 args stream)) 1 2 3)
16:09:44
_death
well, C compilers tend not to do anything smart with printf, even if the control string is known.. maybe give warnings, but at runtime printf interprets it
16:14:03
_death
(let ((s (make-array 0 :fill-pointer t :element-type 'character))) (format s "Hello ") (format s "world") s)
16:16:12
_death
it can be useful if you format things repeatedly, keeping the string around and just resetting the fill pointer
16:16:44
_death
(let ((s (make-array 0 :fill-pointer t :element-type 'character))) (format s "Hello ") (setf (fill-pointer s) 4) (format s "world") s)
16:25:10
lotuseater
if i reset the fill-pointer the array is just shown up to that, even if it were wider extended. and LENGTH also just give the "new" value
16:37:32
_death
in the particular example I gave, the array should have also been made adjustable so that its identity is guaranteed to be preserved.. but FORMAT only needs it to have a fill pointer, so you could use a big enough nonadjustable string if needed
18:25:27
fiddlerwoaroof
Did Erik Naggum's "Enamel" ever get released? https://adeht.org/usenet-gems/enamel.txt
18:26:18
fiddlerwoaroof
An issue I have with these Usenet posts is that they are missing a lot of context
18:26:29
_death
I wrote https://gist.github.com/death/0cf23fd52d309186e52cb120f172b1e1 a long time ago
18:29:36
surabax
Is claw-sdl supposed to be built with the cxx branch of claw? The master branch seems to be missing some symbols
18:32:38
mfiano
The thread management of cl-sdl2 is kinda blah. I always had all sorts of errors in that regard, so I just use the raw init/quit/event-loop stuff
18:34:01
mfiano
This has worked for me because I hacked Sly/SLIME to run the REPL inside the event loop, so there is no difference from main thread
18:36:16
mfiano
the "running repl inside game loop" is actually a recognized feature of Sly with official support now :)
18:36:44
_death
nice.. I've not tried sly in years.. mainly because I prefer a very stable working environment
18:38:42
flip214
which UI toolkit (with a CL library) would you recommend if I need MacOS, Windows, Linux with "local" look and feel?
18:39:48
Josh_2
I'm trying to write a macro to validate the contents of a λ list, when the function is called. My attempts have not worked as I end up with a list like
19:01:19
Josh_2
Okay plan failed. I am defining one function X which has a λ list, I would then like to make a new function Y with the exact same λ list; then from X I would like to call Y with It's λ list
22:06:51
White_Flame
does anybody use Lisa? the old rete lib in quicklisp. the logical lhs form seems to not work for me, even from a clean load
23:08:23
fiddlerwoaroof
White_Flame: I've tried from time to time, but I never can come up with a good use case