http://leaflang.org/index.html
http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-November/067449.html
I'm proud to announce Leaf <http://leaflang.org/>, a soon to be great new programming language. I've been working over a year on it now, though it's nowhere near completion. Consider this a pre-alpha prototype stage announcement. ;)
A lot of my progress is due entirely to LLVM. So while Leaf has a host of features <http://leaflang.org/features/index.html>, I'd like to point out some things that highlight my use of LLVM.
- Multiple execution models: building libraries, executables, or even running the JIT. I'm trying to stay very flexible here and LLVM is making it easy.
- Optimization: So far I've done nothing, LLVM is doing a great job cleaning up my rather underwhelming IR. This lets me focus entirely on my language at the moment.
- Arbitrary bit-size integers: I really like having these in the IR. I dislike fretting at the high-level about exactly what size an integer is, thus I've directly exposed LLVM's ability to have arbitrary bit sizes. (I just need a large-integer division routine now to fully support > 128bits.)
- Exception handling: The landing pads and the ExceptionDemo got me a lot of the way to implementing exception handling.
- Clang: Having a C and C++ compiler which can emit IR has been extremely helpful in deconstructing features of those languages.
Пока что not ready for use.