Skip to content
🥞 (Please don’t repost, this is still a WIP) A friendly little systems language with first-class types.
Branch: master
Clone or download
Pull request Compare This branch is 134 commits behind pikelet-lang:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
assets
book
ci
src
.gitignore
.gitmodules
.travis.yml
CODE_OF_CONDUCT.md
Cargo.toml
LICENSE
README.md
build.rs
rustfmt.toml

README.md

Pikelet!

Pikelet Mascot

Build Status Gitter

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.

Contributing

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.

Acknowledgments

YesLogic Logo

This work was done in part with the generous support of YesLogic.

You can’t perform that action at this time.