A minimalistic programming language written in C89.
Ludovic 'Archivist' Lagouardette b97b33c471 Garbage collector and arrays work! 10 maanden geleden
.idea added type support 10 maanden geleden
test Garbage collector and arrays work! 10 maanden geleden
.gitignore Initial commit 10 maanden geleden
CMakeLists.txt Added README.md contents 10 maanden geleden
LICENSE Added README.md contents 10 maanden geleden
README.md Added README.md contents 10 maanden geleden
bench.c Added coroutine handling 10 maanden geleden
ink.h Added garbage collection (and a memory corruption bug) 10 maanden geleden
lib.c Garbage collector and arrays work! 10 maanden geleden
main.c Added garbage collection (and a memory corruption bug) 10 maanden geleden

README.md

ink

ink is a minimalistic interpreted programming language, tentatively implemented exclusively in C98. It features coroutines and can currently only manipulate integers. Part of the code may not be compliant with C98 and I will try to fix that in time.

It is fully self-contained and doesn't rely on a working standard library beyond the following:

  • malloc
  • realloc
  • free
  • putchar

To make the library not use the standard library, build it with NOSTDLIB defined as a preprocessor directive.

All of these functions need to work for ink to work. It is easy to add new functions to the interpreter. In the future, I will add a garbage collector to handle cleaning dynamically allocated resources.