freenode/#clasp - IRC Chatlog
Search
11:38:37
scymtym
beach: did you form an opinion regarding https://github.com/robert-strandh/eclector/tree/wip-parse-result-protocol-2 ? ( https://github.com/robert-strandh/Eclector/issues/28 is also relevant in case you didn't see it)
13:31:55
scymtym_
beach: no, everything is fine. we agreed that you would evaluate the proposed protocol w.r.t. suitability for second climacs when you get to it. i linked the issue because it is related and i thought you might find it interesting
13:32:43
scymtym_
beach: i would still say there is no rush since we put a disclaimer at the top of the README
13:34:53
beach
The new "purpose" is to do less coding, more specification, more delegation, and more of helping others getting their work done.
13:37:39
scymtym_
sounds like an effective approach. i hope it is as much fun as writing the code yourself
13:47:15
Bike
drmeister: it seems like compiling bclasp in merge-dev-cst is really slow. like, this is before cleavir. do you know what's up?
13:56:13
beach
Bike: What criteria do you currently use in order to determine whether inlining is possible?
13:58:51
Bike
a function can be inlined if it doesn't close over any functions that escape, it doesn't call itself even indirectly, and it doesn't escape. probably the last isn't necessary
14:01:42
Bike
i also used to have that the function couldn't close over anything. you were surprised by that and i realized it was unnecessary
14:04:22
beach
Now, do we have a reliable analysis to determine whether a function creates a closure that escapes?
14:07:08
Bike
https://github.com/robert-strandh/SICL/blob/master/Code/Cleavir/HIR-transformations/escape.lisp#L44-L65 here's my analysis
14:08:22
beach
In line with my new "purpose in life", I'll try to pay more attention and read more of your code in the future.
14:09:01
Bike
Which just follows assignments until it finds something else, and determines that a function "escapes" if it's anything other than a funcall or multiple value call
14:09:44
beach
In the near future, I am thinking I should read and try to understand your code. Would it be OK then if I start asking you questions about it?
16:32:29
Bike
drmeister: speaking of the condition printing stuff - if i do %a in bformat will that be like ~a?
17:46:59
drmeister
Bike: No - there is a short list of format specifiers that translate to C++ boost::format specifiers - I don't think ~a -> %a is one of them.
17:47:38
Bike
Just wondering if we could fix that thing where errors during build don't display correctly until you quit.
19:50:14
karlosz
is there a way to tell if there's a path between two instructions? following the directed edges
19:53:08
karlosz
apparently the catch instruction doesn't necessarily have to dominate all instructions before its two branches merge again
20:04:50
karlosz
is it still necessarily true that catch-instruction dominates everything that succeeds it?
20:09:54
karlosz
i mean like a case where you have some directed edge into a block succeeding catch but not itself dominated by catch
20:10:29
Bike
you need to have this catch close instruction at the point the block is no longer valid, right?
20:10:45
karlosz
im inserting catch close instruction at the predecessor dominated by the first successor of catch
20:11:00
karlosz
but thats not working for some convoluted cases, hence why i asked by using the weaker path condition instead
20:15:12
Bike
I mean, if you have like (block inner (return-from outer)) how does the inner block get closed?
20:15:13
karlosz
what i have works for the majority of non local exits. this is some voodoo coming from restart case
20:17:33
karlosz
right, this catch close is just for deallocating the block frame allocated onto the stack