An open API service indexing awesome lists of open source software.

https://github.com/azdavis/hatsugen

A small programming language formally defined with a series of blog posts and Lean code.
https://github.com/azdavis/hatsugen

Last synced: about 2 months ago
JSON representation

A small programming language formally defined with a series of blog posts and Lean code.

Awesome Lists containing this project

README

        

# Hatsugen (発言)

A small programming language formally defined with a series of blog posts and [Lean][] code.

The blog posts are available in English and Japanese. (I am not a native Japanese speaker but I tried my hand at translating.)

| Part | Title | en | ja |
| ---- | --------------------- | ---------- | ---------- |
| 1 | Integers and booleans | [en][1-en] | [ja][1-ja] |
| 2 | Functions | [en][2-en] | [ja][2-ja] |
| 3 | Product types | [en][3-en] | [ja][3-ja] |
| 4 | Sum types | [en][4-en] | [ja][4-ja] |

## Note about the Lean version

This uses Lean 3.4.2, even though the 'latest' version as of writing is Lean 4. This is because the docs for Lean 4 seem even more scarce than the docs for Lean 3, and I couldn't figure out how to do some stuff. In general, although Lean 4 is clearly the future, it seems like it's not totally ready for prime time yet. I'm excited for the future though!

[lean]: https://leanprover.github.io
[1-en]: https://azdavis.net/posts/define-pl-01/
[2-en]: https://azdavis.net/posts/define-pl-02/
[3-en]: https://azdavis.net/posts/define-pl-03/
[4-en]: https://azdavis.net/posts/define-pl-04/
[1-ja]: https://azdavis.net/ja/posts/define-pl-01/
[2-ja]: https://azdavis.net/ja/posts/define-pl-02/
[3-ja]: https://azdavis.net/ja/posts/define-pl-03/
[4-ja]: https://azdavis.net/ja/posts/define-pl-04/