passerine 0.7.1

A small extensible programming language designed for concise expression with little code.
Documentation

Welcome to Passerine! Passerine is a small, concise, extensible programming language, powered by a VM written in Rust. It was inspired by Scheme, OCaml, Rust, and Wren. Here's a small taste:

syntax 'for var 'in list do {
    body = var -> do

    loop = remaining -> {
        body remaining.head
        match remaining.tail -> [
            Some more -> loop more,
            None      -> (),
        ]
    }

    loop list
}

for number in [1, 2, 3].reverse {
    print (number + "...")
}

print "Liftoff!"

Getting Started

Passerine is still very much so a work in progress. We've done a lot, but there's still a so much more to do!

For those pioneers out there, The best way to get a feel for Passerine is to install Aspen, Passerine's CLI and package manager. We're working on an installation script for the passerine development toolchain; until then, we suggest just cloning this repository and aspen, and reading through the documentation.

Contributing

Contributors welcome! Read our Contribution Guidelines and join the Discord server to get started.

Who started this?

This is maiden project of The Veritable Computation Initiative. Our goal is to improve the tools developers use to write software.

So far, all of Passerine has been developed by a one-man team.

It's taken quite a lot of effort to get this far. I've been thinking about this language for around 3 years now, and have been actively developing it for around the past year. I'm excited to continue development - this is largely a test of personal effort, which is why I've been developing it regardless of whether others see its value at the moment. I'm just a high-school student, so any interest means a lot to me. Thanks for checking out my work!

— Isaac Clayton, the man of the one-man team

Roadmap

See the Project Roadmap to get a feel for what's currently under development.