libera/#commonlisp - IRC Chatlog
Search
23:35:41
dbotton
what is the best way to tell sbcl that on error to no debug but also not exit either?
0:33:52
White_Flame
dbotton: --disable-debugger is a cmdline option, but I think it will probably still exit. Where would you want it to execute from after printing error/stack?
0:35:37
White_Flame
but you say "I don't want to stop running", would you just want to hang or what?
1:38:55
dbotton
It is rare that a condition slips by but for some reason does in various web threads. playing now with restarts and services and so at least recovers and no longer need to run the websites in tmux
3:08:51
zacque
Is it correct that the only way to create an uninterned symbol at runtime is by evaluating GENSYM?
3:11:08
zacque
Thanks! So, there are three ways to create uninterned symbols: GEMSYM, MAKE-SYMBOL, and COPY-SYMBOL
3:14:45
zacque
Ah, that's fine! Now I understand INTERN better by re-reading its dictionary entry, haha!
3:17:43
mfiano
There are more ways, considering you can invoke the different compiler phases at runtime
3:21:32
mfiano
It may call implementation details shared by both. Here we are only concerned with the standard ways though.
3:30:29
mfiano
Can also get more clever with: (defpackage foo (:use cl) (:export foo)) (in-package :foo) (defparameter *foo* 'foo) (unintern 'foo) *foo*
3:36:34
mfiano
err I guess that should have exported *foo* which holds the reference to the unhomed symbol
3:40:30
Nilby
I feel like the "count the ways to make an uninterned symbol" game could be endless: (progn (make-package :foo) (let ((s (intern "FOO" :foo))) (delete-package :foo) s))
6:01:55
mfiano
I suppose you could even change PROGN to IF since UNINTERN is guaranteed to return non-NIL, if you want to keep playing code golf.
7:19:32
zacque
I'm not playing code golf or count the number game. Just trying to consolidating my CL knowledge, so it's very kind of you to verify my naive observation/hypotheses =D
7:46:37
zacque
Is this a mistake? In the "Notes" of write dictionary entry, it is said (pprint object output-stream) == (write object :stream output-stream :escape t :pretty t). Instead, it should be ... == (progn (terpri output-stream) (write object :stream output-stream :escape t :pretty t)).
7:47:10
zacque
Since PPRINT always insert a line break before printing out the pretty version of an object