Peon is a modern, multi-paradigm, async-first programming language with a focus on correctness and speed
Go to file
Mattia Giambirtone e0fa1342a5 Updated README 2022-05-20 16:03:19 +02:00
docs Added skeleton for future expansion 2022-05-20 15:55:28 +02:00
src Removed unneded flags 2022-05-20 16:01:34 +02:00
tests Added tests directory 2022-05-20 15:56:16 +02:00
.gitignore Updated .gitignore 2022-05-04 14:28:52 +02:00
LICENSE Initial commit from JAPL with some changes 2022-04-04 12:29:23 +02:00
Makefile Added Makefile, prettyfied code, initial work on pragmas 2022-05-18 13:32:32 +02:00
README.md Updated README 2022-05-20 16:03:19 +02:00

README.md

peon

Peon is a simple, functional, async-first programming language with a focus on correctness and speed

Project structure

  • src/ -> Contains the entirety of peon's toolchain
    • src/memory -> Contains peon's memory allocator and GC (TODO)
    • src/frontend -> Contains the tokenizer, parser and compiler
      • src/frontend/meta -> Contains shared error definitions, AST node and token declarations as well as the bytecode used by the compiler
    • src/backend -> Contains the peon VM and type system
    • src/util -> Contains utilities such as the bytecode debugger and serializer as well as procedures to handle multi-byte sequences
    • src/config.nim -> Contains compile-time configuration variables
    • src/main.nim -> Ties up the whole toolchain together by tokenizing, parsing, compiling, debugging, (de-)serializing and executing peon code

Disclaimer about the project's state

The project is still in its very early days: lots of stuff is not implemented, a work in progress or otherwise outright broken. Feel free to report bugs!