A minimalistic programming language written in C89.
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
Ludovic 'Archivist' Lagouardette efd764b907 Added garbage collection (and a memory corruption bug) 6 місяці тому
.idea added type support 6 місяці тому
test Added garbage collection (and a memory corruption bug) 6 місяці тому
.gitignore Initial commit 6 місяці тому
CMakeLists.txt Added README.md contents 6 місяці тому
LICENSE Added README.md contents 6 місяці тому
README.md Added README.md contents 6 місяці тому
bench.c Added coroutine handling 6 місяці тому
ink.h Added garbage collection (and a memory corruption bug) 6 місяці тому
lib.c Added garbage collection (and a memory corruption bug) 6 місяці тому
main.c Added garbage collection (and a memory corruption bug) 6 місяці тому

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.