8 comments

[ 2.6 ms ] story [ 27.4 ms ] thread
Hey HN,

Isaac Clayton here! I'm nervous yet very excited to share an early preview of a novel programming language I've been developing for the past year or so. Passerine is an functional scripting language, blending the rapid iteration of languages like Python with the concise correctness of languages like Ocaml, Rust, and Scheme. If you'd like to learn more, read the Overview section of the README.

It's still a ways away from being fully complete, but this release marks the introduction of Passerine's macro system. Like the order of songbirds it was named after, Passerine sings to more than just one tune – this new hygenic macro system makes it easy to extend the language itself – allowing you to bend the langauge to your needs, rather than bending your needs to the language!

This submission links to the GitHub Repo, but there's also a website (https://www.passerine.io) if you'd like to look at that.

Have a nice day!

Hi - this is a really cool looking project! I just want to encourage you to keep going. It’s awesome that you’re exploring the design and implementation of a rather complex thing (a full language!) early on. Stay positive!
Thanks for the encouragement! There is so much more I want to explore :)
This looks really nice. Well done.
I like the syntax definition example. Clean, good looking and useful.
Wow, the control flow constructs / pattern matching alone is super crazy. Well done on the README and explaining the concepts as you go. The language seems awesome and powerful. Can’t wait to try.
Is it possible to start passerine scripts with

    #!/usr/bin/env passerine
and use it as any other scripting language?
Not currently, but I don't see why not - the core language is a simple zero-dependency binary.