freenode/#clasp - IRC Chatlog
Search
23:05:06
Bike
it occured to me we could eliminate the special fastgf compiler but putting in a special fastgf operator instead. not that i want to do that right now
23:25:52
Bike
yeah, so the dispatchy part can still be specially done like now, but the outcomes could be arbitrary code
23:42:15
Bike
so the call history is made up of (selector . code), and instead of codegen-dispatcher it's (compile nil `(lambda (&va-rest args) (discriminate ,call-history))) or so
23:50:30
drmeister
I think I just figured out the free energy perturbation setup - some of the last pieces of the puzzle I was missing.
2:04:36
drmeister
I can launch a thread that updates widgets in the notebook asynchronously while the notebook continues to respond to input.
2:07:14
drmeister
It creates a widget, displays the widget and then launches a thread that has a jupyter notebook cell dynamic environment and can update widgets.
2:08:50
stassats
ok, because often when i ask "why is it written that way" it turns out to be some limitation
2:15:08
drmeister
Well, the key point is I can set up complex dashboard of jupyter widgets and have them updated asynchronously from a thread that watches a bunch of processes, directories and files to monitor their progress.
2:15:44
drmeister
I just didn't like the idea of evaluating a jupyter notebook cell and having it go off into la la land for hours and days.
2:16:52
drmeister
I'm still mulling over approaches of how to develop an "application" in a Jupyter notebook.
5:11:39
drmeister
beach: What is the cleavir instruction that you were going to add to enable debugging across threads?
5:12:14
drmeister
Bike and I were talking about it today and we couldn't recall what you were going to call it.
5:13:37
drmeister
Hmmm. I was describing to Bike my musings about an instruction that would check the status of a flag and if it was set would unwind the stack.
5:14:10
drmeister
Something that would be inserted at the bottoms of loops and at the ends of functions to check for signals and do something if a signal was received.
5:14:25
drmeister
He thought it sounded like this facility that you were thinking of adding for debugging.
5:19:05
drmeister
What I'm looking for is something that will occasionally check if a unix signal occurred.
5:20:36
drmeister
Ok. Is that something I can do at the Common Lisp level? Modifying the LOOP macro for instance?
5:22:25
beach
The definition of back arc is clear in the literature. No need to work with addresses.
5:23:46
drmeister
What about when leaving a function - stassats mentioned that as another place to put these.
5:28:48
beach
Then you also make sure that every back arc (and return, and ...) is such that your virtual machine is in a state that makes it capable to take Unix signals.
5:55:46
drmeister
I'm starting to rely on threads more - and I need to be able to shut them down reliably using unix signals.
5:56:23
drmeister
Unix signals are asynchronous and C++ exception handling is synchronous - there is no way to marry them other than to have safe points in the code.