freenode/#lisp - IRC Chatlog
Search
22:44:55
PuercoPop
Magit makes it easy to make them visible. Its either that or keep squashing everything into a large commit
23:14:45
phoe
The function found in the stacktrace, %LOCK-WHOSTATE-STRING, attempts to format a string, and in order to format it, it needs to prettyprint a symbol. My prettyprinting is broken, as it unnecessarily prints a package prefix, so it looks up a package, which looks up package local nicknames, which tries to grab the PLN lock, which, when there's lock contention from multiple threads, attempts to set an
23:14:51
phoe
informational message to the thread saying on which lock it is waiting, and that informational message is the value of the function %LOCK-WHOSTATE-STRING, which then gets called...
23:17:07
phoe
https://github.com/Clozure/ccl/blob/88daad4adc8d89f70d00883a9ed248a2d02f6145/lib/misc.lisp#L1483
0:54:55
pjb
phoe: in an internal function such as this, you should probably avoid format, and fall back to lower level I/O.
0:56:48
pjb
phoe: like: (progn (write-string string) (write-string " for ") (if … (write-string (symbol-name (lock-name lock)))) (write-string "@ #x") (princ (%ptr-to-int …)) (terpri))
0:57:32
pjb
or even, concatenate 'string in this case, since you want to return the string, not do I/O.
5:18:51
oni-on-ion
serious important question. can i move the colon to the right side of keywords in some way?
5:21:10
edgar-rft
you can create symbols with a colon at the end but they won't be automatically treatened as keywords anymore
5:24:19
oni-on-ion
hmm i want to hack the reader or something to get it happening. i just cant wrap my brain the other way
5:24:55
oni-on-ion
PuercoPop, my goal is to have the colon on the right side of keywords. or alternatively, to have a different character at the front instead of the colon. is this more clear ?
5:29:00
PuercoPop
oni-on-ion: I meant why would you want to do that? What is the underlying purpose?
5:29:09
beach
oni-on-ion: You can use Eclector. Then you can program the token parser to do what you want.
6:18:30
oni-on-ion
i'd rather modify sbcl itself , probably cleaner than pulling in such a beast as Eclector
6:29:58
oni-on-ion
could just coax emacs into displaying ':' into another char because unwiring my brain (from ObjC) might be counter productive. some kinds of trauma are healthy
7:33:53
aeth
oni-on-ion: the default for all schemes isn't colon-after, we've gone over this in #scheme before, there are several conventions, including the CL one, and like all things Scheme it's evenly split
8:04:17
pjb
aeth: you can have #:keywords, you just need to change the dispatching reader macro for #:
8:08:17
aeth
Well, yes, it's possible, but you really can't do that by convention (just like you can't have fooBarBaz). foo: is strange but #:foo is actively misleading
8:11:01
pjb
aeth: the argument would be that you should have a clear marker somewhere, to introduce the new syntax. Like: (enable-my-strange-syntax)
8:11:34
pjb
It could be out of the file, in which case, the file type would be something else than "lisp" or "cl".
8:46:49
piotrbrzezinski
Yep. I just started (and have to learn emacs also on the way), but it feels great so far :)
8:59:03
phoe
Fun things: the CCL bug is an interaction between package-local nicknames, locks, and WITH-STANDARD-IO-SYNTAX in a multithreaded environment.
9:02:11
phoe
loke: CCL seems to be using cl:find-package, ccl::pkg-arg, and ccl::%find-pkg without much consistency as for which function to use at the moment
9:02:41
phoe
it's less of an issue with PLNs and more of an issue that CCL's code is messy like this
9:55:51
no-defun-allowed
in unrelated news, i got around to updating heroku-buildpack-cl to use new SBCLs and CCLs: https://github.com/nodefunallowed/heroku-buildpack-cl
9:56:41
no-defun-allowed
it was basically 4 LOC of shell to change, i figure the original author vanished?