Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Sounds to me like CLASP; it automatically exports C++ objects to be used from Common Lisp also via llvm.
Their DEFUN and DEFVAR macros for example let us define a function or a variable that will be available as a Lisp function, and can be used as an ordinary C function from the C code. Emacs is written in pure C99 language and works with both GCC and Clang I believe. We can just define a C function via macro, and it is auto exported and made available to Lisp. For example my first patch to Emacs was for this function (we added "count" argument to make it possible to skip enumerating files in a directory for the case when user code is just interesting if a directory is empty or not):
Related posts
- Are there extensible environments in the manner of Emacs outside of text editors and developer tools generally?
- Don't Invent XML Languages (2006)
- I Accidentally a Scheme
- Clozure CL 1.12.2
- plain-common-lisp: a lightweight framework created to make it easier for software developers to develop and distribute Common Lisp applications on Microsoft Windows