Hare is a very WIP and as-of-yet not useful programming language.
Hello, onlooker! Please keep this project a secret. Feel free to mess around with it and send feedback (we're in #hare on irc.freenode.net), but please keep it to yourself. We don't want to announce this project until it's much, much more mature.
* This means that this is not yet another LLVM frontend, for those following along at home.
You need to have my fork of qbe installed.
mkdir build cd build ../configure make make check # run tests . ./localenv.sh # Your shell is now configured to use the newly-built Hare toolchain and stdlib, # go forth and compile Hare projects
Current status: partway through phase one.
Phase one: language design and bootstrap compiler
The first step is to (1) design the language and (2) write a compiler for it. We refer to this as the "bootstrap compiler" and its main purpose will be compiling the "hosted compiler". The bootstrap compiler is not meant to be ergonomic or pleasant to use - for example, it asserts on incorrect programs instead of reporting errors nicely.
Phase two: hosted compiler, stdlib
Rewrite the compiler in Hare itself and develop enough of a stdlib to support it, and a reasonable number of interesting programs. The bootstrap compiler is designed so that it can be incrementally replaced with the hosted compiler. The intention is to maintain both compiler implementations indefinitely.
Phase three: it's done
Write a specification, freeze the language, expand the stdlib, port to more platforms, and use Hare for new/novel projects.