cffi
cl-parametric-types
Our great sponsors
cffi | cl-parametric-types | |
---|---|---|
16 | 1 | |
412 | 43 | |
2.7% | - | |
4.0 | 0.0 | |
5 days ago | almost 6 years ago | |
Common Lisp | Common Lisp | |
MIT License | - |
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.
cffi
-
A few newbie questions about lisp
When you want to do anything that breaks the nice bubble of your Lisp image, you might want to know a bit about your operating system's programming interface. This will come in handy if you ever need to wrap a library with CFFI. There are some things that are pretty inconvenient as a rule (like dealing with any protocol that uses network byte order), but if you stay within the bubble of your Lisp image, you won't really notice them.
-
*UPDATE* - CL-OBJC
I'm just posting the work that I have done over the last year or so on CL-Objc. I'm still blocked from better support (e.g., passing structs by value for frameworks like UIKit). I just wanted to post what I have done online for others interested in the work or motivated to collaborate on this.
-
Waiting on feedback - CFFI PR
Good morning ladies and gentlemen, I have been waiting on some feedback for PR in CFFI. This feature is blocking me from reviving CL-OBJC. Any help will be appreciated. Thank you in advance.
-
Programming the Raspberry Pi GPIO pins using Common Lisp?
Maybe access the pins using CFFI, https://github.com/cffi/cffi package and one the libraries mentioned here? https://www.bigmessowires.com/2018/05/26/raspberry-pi-gpio-programming-in-c/
- Why Functional Programming Should Be the Future of Software
-
interested in learning lisp, (specifically for games, but also for everything else including tui and gui applications for linux. currently have next to no programming knowledge, can i get forwarded some resources and some tips on what exactly i should do? any videos i should watch?
C: Alternatively (more difficult) you could try to wrap the underlying C layers of either of those mentioned under Python with CFFI. The C-based game engine, Raylib, is also wrappable this way. I finished a super cool walking simulator in CL with that, but it is more tedious than the others since raylib is really barebones.
-
Common Lisp
I feel inspired to start Lisp after being disappointed with the "open" source scene of 2021. I'd rather pay LispWorks a yearly fee and be left alone than dealing with unbalanced people in the Python space. The free Lisp implementations also look somewhat isolated from the ideological wars.
However, a C interface is required. Is this one the recommended solution? Is it really portable?
https://common-lisp.net/project/cffi/
What is the speed compared to a Python C extension? Are implementation-specific C interfaces faster (I guess they are)?
Sorry for so many questions, but these can usually only be answered by people who have actually used the interface.
-
Which Lisp for C/C++ interop?
Every Lisp includes an FFI (Foreign Function Interface) which allows it to interface with any C library. CFFI is a library that sits on top of that FFI so that your code is portable across all Lisp implementation. CFFI supports the following list, so I guess it's the answer to your question:
Or you can pick this lib in order to not be dependent on some specific implementation: https://common-lisp.net/project/cffi/
-
A Hybrid OS
So now you've decided that using system libraries via FFI is "not a real program" as well. So much for OCaml, Golang, Common Lisp, and basically any other language that isn't C or C++. I called it in my other comment:
cl-parametric-types
-
polymorphic-functions - Possibly AOT dispatch on argument types with support for optional and keyword argument dispatch
There do exist libraries like cl-parametric-types that do it the way you seem to propose, but subjectively I find it a bit unweildy wrt to the other interactive aspects of lisp.
What are some alternatives?
cl-autowrap - (c-include "file.h") => complete FFI wrapper
go-ffi - Go bindings to libffi
racket - The Racket repository
trial - A fully-fledged Common Lisp game engine
paip-lisp - Lisp code for the textbook "Paradigms of Artificial Intelligence Programming"
cl-cookbook - The Common Lisp Cookbook
specialization-store - A different type of generic function for common lisp.
go - The Go programming language
polymorphic-functions - A function type to dispatch on types instead of classes with partial support for dispatching on optional and keyword argument types.
julia - The Julia Programming Language
dense-arrays - Numpy like array object for common lisp
awesome-lisp-companies - Awesome Lisp Companies