-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Labels
Description
Apologies for submitting this as an issue. I wasn't sure where else to ask.
I'm interested in working with Habit, as I've been trying to find a good solution for lower-level functional programming, and I had a few questions, as I'm unsure whether the docs in /doc are relevant to the current implementation, as many of them haven't been updated in 3 years.
- Is there still an FFI of sorts? If I'm understanding /doc/primitives.txt properly, simply defining a reference to a function and then building that function in C and linking the object file built from your C file will allow you to use functions from C? However, I see that the documentation for calling Habit from C also mentions building with CompCert and something called "cheney" that I can't seem to find on the web easily, while the Makefile has explicitly removed references to CompCert, but what appears to be an example of using an FFI in /tests also remains largely unchanged, so it's unclear to me whether that still works the same way or how I would go about using such features.
Which leads me to...
-
Is CompCert required to use Habit or is everything based on LLVM now, as per usage of mil-tools?
-
Are linear and substructural typing, described as "a more experimental feature of Habit" on habit-lang.org, implemented?
Thanks in advance!