Tardis / lang /
@Jookia Jookia authored 18 days ago
..
app Bump copyright year 1 month ago
mini-gmp lang: Switch to mini-gmp rationals for number representation 8 months ago
modules lang: Add text literals 18 days ago
CMakeLists.txt Bump copyright year 1 month ago
README.md Bump copyright year 1 month ago
boolean.c lang: Add And for boolean 1 month ago
boolean.h Bump copyright year 1 month ago
bytecode.c lang: Add text literals 18 days ago
bytecode.h Bump copyright year 1 month ago
compile.py lang: Add text literals 18 days ago
debug.c Bump copyright year 1 month ago
debug.h Bump copyright year 1 month ago
error.c Bump copyright year 1 month ago
error.h Bump copyright year 1 month ago
list.c lang: Add fields to objects 1 month ago
list.h lang: Add fields to objects 1 month ago
main.c lang: Add text literals 18 days ago
module.c lang: Add text literals 18 days ago
module.h lang: Add text literals 18 days ago
object.c Bump copyright year 1 month ago
object.h Bump copyright year 1 month ago
rational.c Bump copyright year 1 month ago
rational.h Bump copyright year 1 month ago
types.h Bump copyright year 1 month ago
vm.c vm: Increase stack to 32 elements 1 month ago
vm.h Bump copyright year 1 month ago
README.md

Language prototype project

This is the prototype language for the Tardis prototype project.

This is mainly to get an environment up and running. This means no fancy features, no tests, no optimizations, etc.

Design notes:

  • Bytecode VM is stack-based with indexing
  • Garbage collection is done using reference counting
  • Stack is shifted on function call
  • Empty function arguments are re-used for return values
  • Callee cleans up unused stack space when returning

License

All documentation and software for this project is under the MIT license unless otherwise specified.

Copyright: 2024 Casey Reeves casey.reeves@lumina-sensum.com

Copyright: 2024 John Watts john.watts@lumina-sensum.com

SPDX-License-Identifier: MIT