Tardis / lang /
..
app Bump copyright year 1 month ago
mini-gmp lang: Switch to mini-gmp rationals for number representation 8 months ago
modules lang: Add way to define new classes 1 month ago
CMakeLists.txt Bump copyright year 1 month ago
README.md Bump copyright year 1 month ago
boolean.c Bump copyright year 1 month ago
boolean.h Bump copyright year 1 month ago
bytecode.c lang: Add ability to create class objects 1 month ago
bytecode.h Bump copyright year 1 month ago
compile.py lang: Add way to define new classes 1 month 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 Bump copyright year 1 month ago
list.h Bump copyright year 1 month ago
main.c lang: Free modules after loading is finished 1 month ago
module.c lang: Add ability to create class objects 1 month ago
module.h lang: Add ability to create class objects 1 month 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 Bump copyright year 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