freenode/#sbcl - IRC Chatlog
Search
0:09:27
stassats
then move the argument marshalling code into the actual function - it'll be faster and avoid boxing/unboxing values
0:17:12
sveit
actually, I am looking at the documentation for dynamic bindings with threads, and it seems to say (13.2) that they are correctly thread local
0:20:32
pkhuong
sveit: consider using threads to turn the inversion of control into a message buffer interface
0:31:50
sveit
stassats: sorry, I got disconnected, did you have a comment on the solution with dynamic binding?
0:34:04
sveit
does this mean I can make a single callback that (funcall *global-var*) and dynamically bind *global-var* in each thread to solve my issue without a pool?
0:34:18
sveit
so concretely, (define-alien-callback num-caller double-float ((x double-float)) (funcall *global-fun* x)), used like (let ((*global-fun* some-fun)) (alien-funcall "name" num-caller))
0:35:04
sveit
at least without a per-thread pool, of course I would still need a different global variable for each type of callback, or ones used simultaneously in the same thread
2:29:38
karlosz
okay, got access to ppc64 thanks to stylewarning. going to start an honest threads effort now...
7:03:57
White_Flame
When the stack overflows, "Control stack guard page temporarily disabled: proceed with caution". When the stack shrinks back to an acceptable size, is that guard page re-enabled?
7:56:07
stylewarning
I’m building sbcl master using a bootstrapped sbcl master on PPC64 and get a segfault
9:00:48
karlosz
don't want to make too much noise in stylewarning's room... it's still an in-progress port right? :)
11:44:56
White_Flame
I know. Just that the possibility of infinite non-tail recursion exists, so having an attempt at error capture for that instance is desired