A minimalistic programming language written in C89.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
Ludovic 'Archivist' Lagouardette b97b33c471 Garbage collector and arrays work! il y a 1 an
.idea added type support il y a 1 an
test Garbage collector and arrays work! il y a 1 an
.gitignore Initial commit il y a 1 an
CMakeLists.txt Added README.md contents il y a 1 an
LICENSE Added README.md contents il y a 1 an
README.md Added README.md contents il y a 1 an
bench.c Added coroutine handling il y a 1 an
ink.h Added garbage collection (and a memory corruption bug) il y a 1 an
lib.c Garbage collector and arrays work! il y a 1 an
main.c Added garbage collection (and a memory corruption bug) il y a 1 an

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.