libera/#clasp - IRC Chatlog
Search
11:54:37
kpoeck
I follow #sicl daily, will have to find time try it out. Very interesting discussions
11:56:12
kpoeck
Claspers, I wrote a wiki page on how to instally current clasp on Ubuntu 20.10 (https://github.com/clasp-developers/clasp/wiki/Building-with-LLVM-13). Please check if you find time
12:06:20
kpoeck
I also wonder whether we could use your Bootstrap Common Lisp idea to simplify building clasp. Most - or all - of the restrictions that you mentionned in your talks in the online lisp meetings seem to apply for clasp. whenever I try to add something to clasp, I do it at the very end of the build process, so that I can use full power cl (I think
12:07:28
beach
I think I have to figure out how to turn the SICL bootstrapping procedure into something that can be used more generally.
12:07:56
beach
I mean, we created all those implementation-independent modules, but they all use the full Common Lisp language.
12:08:28
beach
So either you have an existing implementation and you replace some of your modules by ours. Or else, you need the SICL bootstrapping procedure.
12:12:35
kpoeck
I am all in favour to use SICL modules. I spent a significant amount of time integratiing eclector fully into clasp but now that seems to work fine. I did that because I was fed up fixing bugs in clasp reader implemented in c++
12:13:44
beach
So, at the moment, you use many of our modules, you need an existing Common Lisp implementation, which kind of defeats the purpose.
12:15:26
kpoeck
Yes, but this is probably only a subset. There were a lot of edge cases in the c++ reader that are still to be fixed, but don't seem be used by eclector (Like deciding that a "D" might be a digit nd nit a character given the right read-base)
12:16:31
kpoeck
Well before the is a working BOCL, I consider ECL an implemention that is self sufficient
12:17:40
beach
But, I still don't see how you can bootstrap Clasp on an existing Common Lisp implementation, given that it needs the LLVM interface right away, and that requires C++ interop.
12:19:05
kpoeck
Well so many thing to figure out and so few time :-) . Still there must be an easier way than bootstraping through aclasp and bclasp
12:19:21
beach
Or, alternatively, since LLVM is so slow to execute, Clasp could just generate code with the right ABI, but not using LLVM.
12:20:04
beach
I mean, using LLVM for the C++ code, of course, but generating its own code from Common Lisp.
12:23:20
kpoeck
When its time to switch clasp from X86-64 to Apple Silicon we find out, whether its a good idea to use llvm as a compiler backend
12:24:27
kpoeck
the opendylan guys also seem to use llvm as their backend, but with a different integration pattern
12:29:03
kpoeck
This is described here: https://european-lisp-symposium.org/static/2020/housel-slides.pdf