Hi all, I was discussing this in racket-money and someone suggested I should quickly reference it here.
S10 (https://linki.tools/s10) is a superoptimization framework in Racket. If you are familiar with Mangpo's work on Greenthumb you know what I am talking about. This work follows a similar pattern but builds a commercial product on top of the Racket ecosystem. A bit of background: At Linki Tools (https://linki.tools) we have been interested in development tools consultancy and for a few years now we have been developing compiler optimizations and backends for GCC and LLVM, as well as testing and verification frameworks for compiler technology. Throughout my time in this market I have seen a few places where the existence of a superoptimizer would have been welcomed however, there was nothing available that could be easily retargetable to other architectures (usually clients have their own internal cpu archs that are not publicly available). I found Greenthumb back in 2016 and contacted Mangpo back then, however after some careful study of the code and some upstream patches I started heavily changing the code, to the point where incremental upstream patches became unfeasible. I ended up rewriting most of Greenthumb and adding many other features expected by clients of a commercial product like straightforward profiling and debugging, better error messages, distributed execution, a plugin framework for internals extension, etc. Because of this S10 stopped working with the backends developed for Greenthumb and I decided to target instead as a proof of concept RISC-V architectures rv32i, rv64i, rv128i. This led me to present this work last week in Barcelona in the RISC-V Workshop. A lot of things remain to be done but I didn't want to let the opportunity pass to thank everyone who is part of the Racket community and made this possible. Thank you for the amazing Racket ecosystem. Kind regards, -- Paulo Matos -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.