freenode/#clasp - IRC Chatlog
Search
13:21:43
drmeister
Bike: You don't need to do anything when you add fields to ThreadLocalState - I put them at the top of the stack - so they are automatically managed.
13:24:02
Bike
you said you wanted something you could like print on a poster, right? how many pixels is that?
13:26:07
drmeister
This is just at the beginning I'm sure. It's probably that graphviz uses a 16 byte word to represent edge lengths.
13:33:24
Bike
okay, so my new catch thing works. now for suspend and resume, how do condition variables work? can we just unschedule a thread until resume is called on it?
13:35:25
drmeister
I have to read the literature on condition variables every time I use them to refamiliarize myself with them.
13:36:22
drmeister
You got - like you got this lock and this other thing and then one thread hands the lock to another thread and then waits for the other thing to change it's value.
13:36:59
Bike
"Even if the shared variable is atomic, it must be modified under the mutex in order to correctly publish the modification to the waiting thread." weird things, cool
13:37:23
drmeister
I ccould scale down the svg's but they are tied to the font size (12pt). I'd have to scale that down to 1.2 pt or something. bleh.
13:38:29
drmeister
Graphviz is written in C - and they use a unsigned short to represent node lengths - great.
13:40:16
Bike
hm, condition variables sometimes just spontaneously fuck up and trigger early. this is part of the standard. super
13:44:52
Bike
fifty years later, someone tries to use your tool to make a billboard... but tragedy strikes...!
13:50:14
drmeister
My intuition here is spot on - I really need to generate this graph - it will give me a lot of insight on how to implement what I'm working on.
13:50:53
drmeister
Those are the nodes for one small part of the graph. The real graph would have maybe a hundred of these connected by edges.
13:51:33
drmeister
Notice how they all look very similar? They are all aligned with each other and the different parts are dangling down. I'm very proud of that.
13:53:02
drmeister
Every one of those was generated using a simulation to maximize beauty (kind of like Tex but for molecules). The bigger ones use a smaller one as a template so that they all share an orientation.
14:07:54
kpoeck
I use it, since with cst all libraries with readtable modifications fail (see issue https://github.com/robert-strandh/Eclector/issues/52 and https://github.com/robert-strandh/Eclector/issues/53)
14:08:39
kpoeck
but I understand that maintaining Generate-AST is double work, so lets try to resolve the readtable problem for CST
14:09:57
kpoeck
Its not so much an error in Eclector, more that I need design guidance on how to integrate it correctly
14:11:05
kpoeck
If there is a scetch on how to integrate Eclector properly I believe I could make the changes to clasp
14:14:18
kpoeck
bike locally I have integrated newest eclector into clasp, Is this a change we could do? I had to update cleavir-file-list.lisp and cleavir_file_list.py
14:15:48
kpoeck
I just did locally on my machine, didn't want to disturb anything for clasp or cando
14:16:01
beach
scymtym: I am not referring to anything since I have no idea what the problems might be.
14:16:52
kpoeck
I upgraded in wscript and had to update cleavir-file-list.lisp and cleavir_file_list.py by running regenerate-cleavir-file-list.lisp
14:17:38
kpoeck
Was waiting for scymtym to describe the full eclector integration in https://github.com/robert-strandh/Eclector/issues/53
14:19:36
kpoeck
Yesterday for the first time I was able to compile stock ironclad with Clasp (took some hours and needed 10 GB)
14:25:09
beach
kpoeck: There is a simple thing you can do for now. You can use the normal reader and then call cst-from-expression to use CST-to-AST.
14:34:55
drmeister
And that doesn't appear to have a solution according to random anonymous people on the interwebs
14:42:41
kpoeck
I believe clasp in cst mode does call cst-from-expression (see https://github.com/clasp-developers/clasp/blob/dev/src/lisp/kernel/cleavir/translate.lisp#L771)
14:44:53
kpoeck
The issue is that modification to the reader are done in clasp readers but are not reflected in eclector
14:47:05
kpoeck
so for example in cl-iterate the following is called (set-dispatch-macro-character #\# #\L #'sharpL-reader)
14:52:04
Bike
we could bind that variable to our readtable in compile-file, and define methods on the readtable protocol in eclector so it can work with clasp's readtable.