c2ffi
c-mera
Our great sponsors
c2ffi | c-mera | |
---|---|---|
4 | 7 | |
216 | 383 | |
- | - | |
5.7 | 0.0 | |
5 days ago | over 1 year ago | |
C++ | Common Lisp | |
GNU Lesser General Public License v3.0 only | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
c2ffi
-
sketch, sdl2, c2ffi on M1 Mac?
Quickloading :sketch or :sdl2 wants the c2ffi library which seems to be available on neither Quicklisp nor Homebrew. Downloading that library from source and following the build instructions (and several alternative variants found by Googling ) leads to errors like:
-
C Isn't a Programming Language Anymore
> C compiler based tool that outputs DWARF or DWARF-like debug output that actually lays out everything
That sounds like C2FFI: https://github.com/rpav/c2ffi
The only language ecosystem where I've seen it used is Common Lisp. But it emits plain JSON and depends only on LLVM (albeit a specific version thereof), and I don't see any reason why you couldn't build e.g. a Python auto-binding library on top of it.
-
Alternative to ECL?
There is the cl-autowrap that can generate lisp packages from C header filesc- I am unsure if it sticks to ANSI C or goes beyond. It inturn depends on c2ffi for the first time around.
-
Installing c2ffi on Ubuntu
git clone https://github.com/rpav/c2ffi git checkout -b llvm-11.0.0 refs/remotes/origin/llvm-11.0.0 cd build cmake .. # -DBUILD_CONFIG=Release LIBRARY_PATH=/usr/lib/llvm-11/lib/ make # -j8 sudo checkinstall
c-mera
-
Submissions to Spring Lisp Game Jam 2023
Arguably Pacman Clone - it uses WISP (non s-exps syntax for any lisp) + C-Mera which is some kind of mix of C and CL, and is written mostly in CL.
-
Is there a language with lisp syntax but C semantics?
c-mera does exist.
-
jc - Meta-program C/C++ with JavaScript
Thanks, you're right. I chose JS because it is so well-known, but I think it does have some other advantages as well. For example, if you need to run a lot of compatibility test commands, or need to generate code via external programs, or even make network requests to get config values or something, you can do all of that in parallel with JS async instead of sequentially like configure. You might find https://github.com/kiselgra/c-mera interesting. It's similar to this project but uses Lisp and a unified syntax.
-
Generate C code
I used https://github.com/kiselgra/c-mera for this purpose and it worked very well.
-
Carp – A statically typed Lisp, without a GC, for real-time applications
That's a Lisp preprocessor for a non-Lisp language.
If you program in C using the Common Lisp c-mera preprocessor, or any of the other similar systems, it's the same thing.
You're writing everything in S-exps, and the expansions use conses, but the output is C; so that of course cannot call cons at run time.
https://github.com/kiselgra/c-mera
-
Syntatic Sugar that compiles to C
even more interesting are the handful of projects layering lisp style macros on top of C. i've seen several go by over the years; a quick google search brought up c-mera and cmacro.
-
Alternative to ECL?
If you look for lisp-like syntax in C: - cmera https://github.com/kiselgra/c-mera
What are some alternatives?
cl-autowrap - (c-include "file.h") => complete FFI wrapper
janet-benchmarksgame - Versions of the "Computer Language Benchmarks Game" benchmarks for the Janet language.
mal - mal - Make a Lisp
chibi-scheme - Official chibi-scheme repository
cmacro - Lisp macros for C
CMake - Mirror of CMake upstream repository
cl-raylib - Common Lisp binding of raylib
cl-sdl2-image - SDL_image 2.0 wrapper
cl-sdl2 - Common Lisp bindings for SDL2 using C2FFI.
datatype99 - Algebraic data types for C99