cicada-lang / cicada-plct

Cicada Language (PLCT little team)
https://cicada-lang.org
GNU General Public License v3.0
91 stars 7 forks source link
cicada dependent-record-types dependent-type-theory dependent-types interactive-theorem-proving language programming-language prover repl theorem-prover type-system type-theory

Cicada Language

[ HOMEPAGE | PLAY ]

Welcome *^-^*/

Cicada language is a dependently typed programming language and an interactive theorem prover.

The aim of cicada project is to help people understand that developing software and developing mathematics are increasingly the same kind of activity, and people who practice these developments can learn from each other, and help each other in very good ways.

Development

npm install           # Install dependencies
npm run build         # Compile `src/` to `lib/`
npm run build:watch   # Watch the compilation
npm run format        # Format the code
npm run test          # Run test
npm run test:watch    # Watch the testing

Thanks

Thanks, PLCT Lab, for sponsoring our community at very early stage of our project.

Thank you, Daniel P. Friedman, for we learned most of our knowledge about programming language design from your little books.

Thank you, David Christiansen, for coauthoring "The Little Typer" with Dan, and writing up great tutorials (1, 2) about dependent types.

Contributions

To make a contribution, fork this project and create a pull request.

Please read the STYLE-GUIDE.md before you change the code.

Remember to add yourself to AUTHORS. Your line belongs to you, you can write a little introduction to yourself but not too long.

License

GPLv3