Work in progress for Peon 0.2.x
Go to file
Mattia Giambirtone ecbdf120e3
More lexer bug fixes and tests. Minor changes to error reporting. Added intrinsic aliases
2024-02-23 13:15:11 +01:00
docs Initial rework additions 2023-07-20 14:37:46 +02:00
src More lexer bug fixes and tests. Minor changes to error reporting. Added intrinsic aliases 2024-02-23 13:15:11 +01:00
tests More lexer bug fixes and tests. Minor changes to error reporting. Added intrinsic aliases 2024-02-23 13:15:11 +01:00
.gitignore Change build directory 2024-02-23 13:15:10 +01:00
LICENSE Initial rework additions 2023-07-20 14:37:46 +02:00
README.md Update copyright/license notices & README with build instructions. Made peon buildable via nimble build 2024-02-23 13:15:08 +01:00
nim.cfg Completely rework generics 2024-02-23 13:15:05 +01:00
peon.nimble Change build directory 2024-02-23 13:15:10 +01:00

README.md

peon-rewrite

Work in progress for Peon 0.2.x

What changed

  • Peon will no longer use a runtime GC. Instead, the memory model will use lifetimes with regions-- actually, peon will use generational references instead (they're way cooler IMHO)
  • The compiler has been completely overhauled and no longer handles any code generation (in fact, currently there is no code generation at all, just a parser and a type checker). This is to allow for true multi-backend support as well as to improve separation of concerns because all the code generation stuff intertwined with the typechecking was driving me insane (please do send help)

Build

Just run nimble build. It should grab all the dependencies for you and produce a peon binary in your current working directory

Tests

Peon is starting to get large enough for it to need an automated test suite (wow, much fancy, such cool), so you can run nimble test to run that. The actual tests aren't using testament because I have a severe case of NIH syndrome, sorry folks!