Pikelet is a small, functional, dependently typed programming language.
Dependent types allow us to do a bunch of really interesting things, like using records for modules, declaring the length of arrays at the type level, and much more β many of great utility for low-level and high-level code alike!
We hope to one day grow Pikelet into fully-fledged systems programming language, with support for unboxed data types, control over memory layout and allocation strategy, linear types, and a flexible phase distinction and support for calling other languages. At the moment however we've only implemented a type checker and very slow interpreter, so don't get your hopes up too much yet! There's still a whole lot to do before it is even remotely useful to anyone! π
For more information, see The Pikelet Book.
We really want to encourage new contributors to help out! Please come chat with us on our Gitter channel - if you have any questions about the project, or just want to say hi! We sometimes get side-tracked on technical discussions, but we're always more than happy to spend time explaining things.
This work was done in part with the generous support of YesLogic.