libera/#ecl - IRC Chatlog
Search
8:28:27
jackdaniel
bike: yitzi: where will I find the throw/catch implementation in the clasp version of cleavir? (I gather that cleavir does not include it beacuse it is runtime-specific(?) ?
10:07:54
yitzi
jackdaniel: Bike will probably have to help with the actual details. The Clasp specific Cleavir code is in src/lisp/kernel/cleavir
10:08:03
yitzi
There is some catch stuff here https://github.com/clasp-developers/clasp/blob/5c9f7ed830a35c9bdc43e3f82ddbe94456780a38/src/lisp/kernel/cleavir/landing-pad.lisp#L43
10:10:01
jackdaniel
I'm more interested in how it is represented in BIR (since it is explicitly excluded in the cleavir canonical repository)
10:11:44
yitzi
I think that the expected failure ansi-test PR is done. I'd like to rewrite the README and maybe use Markdown. Maybe leave that to another PR since I'd like to start fresh after I'm done with a few other PRss.
10:16:03
yitzi
I just did a squash to clean up the commit history. So it is ready for a final review if you want. Cheers!
12:37:11
bike
jackdaniel: catch/throw are not represented in cleavir right now. clasp defines catch and throw as macros, which expand into calls to core:catch-function and core:throw-function. the macros are defined in lsp/claspmacros.lisp and the functions in core/compiler.cc
12:41:13
bike
jackdaniel: the code yitzi linked is about C++ catch, which is different from lisp catch
12:45:39
jackdaniel
was there a technical problem with cfg that catch/throw is not included, was it not worth it, or simply it was never implemented?
12:48:55
bike
it's possible i should bother, since we still use the predlib code that uses catch and "inlining" might speed it up a bit
12:50:40
bike
which is iirc what sbcl does - (throw tag form) ends up as (multiple-value-call #'%throw tag form) or something
13:34:56
jackdaniel
yitzi: I'd leave sections either as urn or simply numbers (I think that sbcl conditions have some format you could plagiarise)
13:41:31
yitzi
Oh, I just mean adding references in general is a big job. Not the specific url format or resolver.
13:45:03
yitzi
Clasp is running its own regression tests + ansi-test. Are you interested in adding ansi-test to the ECL ci?
13:47:24
jackdaniel
our ci is lacking big time (we have ci only for windows currently) and it is set up by someone
13:49:43
yitzi
Karsten had a low tech script alternative to cl-test-grid. He had asked me to come up with a system to test quicklisp systems without the whole cl-test-grid complexity. I started, but it got put on the back burner.
13:50:45
jackdaniel
I run it against last version and current (both native and bytecodes compilers) and then compare results to see what's going on
13:51:47
yitzi
I should try it out. I tried adding some stuff to it a while back, but got discouraged because adding a new "test harness" was kind of complicated.