Embedding Lisp in C++ – A Recipe
lambdafaktorie.com
lambdafaktorie.com
- https://ferret-lang.org/ "Ferret is a free software lisp implementation designed to be used in real time embedded control systems. Ferret lisp compiles down to self contained C++11" "Easy FFI (Inline C,C++. See Accessing C,C++ Libraries)" "Easily Embeddable (i.e Ferret fns are just C++ functors.)"
- https://github.com/clasp-developers/clasp "Clasp is a new Common Lisp implementation that seamlessly interoperates with C++ libraries and programs using LLVM for compilation to native code."
Embeddable Common Lisp is a conforming implementation. It's what it says in the title, pretty much any Common Lisp library and still embeddable in C/C++. Use it with SLIME and all that.
I do like exo-lisps like Fennel, Ferret and Hy. They just have very different goals from the project referenced in this article.
[2]: https://github.com/ThePhD/sol2
Embedding Fennel in Rust allows you to ship user-facing macros written in Fennel without users having to setup a Lua environment beforehand (e.g. [1]).
[1]: https://git.sr.ht/~ioiojo/kiwi/tree/master/item/tests/data/c...
I'm one of ECL maintainers, if you have questions about the implementation itself then I'll be happy to answer.
p {
color: #333;
}