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.

32 lignes
724 B

  1. #include "ink.h"
  2. int main(int argc, char** argv) {
  3. struct context* ctx;
  4. ctx = ink_make_default_context();
  5. int coro = ink_compile(
  6. ctx,
  7. "20 print_int 10 10 + print_int 2 10 * print_int 5 5 5 * swap - print_int 60 3 / print_int\n"
  8. "5 1 1 1 1 + + + * print_int\n"
  9. "2 2 9 * + print_int\n"
  10. "20 -1 80 10 10 * - * print_int print_int"
  11. );
  12. ctx->routines[coro].panic = 0;
  13. int increment = 1 << 16;
  14. int counter = increment;
  15. int c;
  16. while(ink_can_run(ctx)) {
  17. for(c = 0; c < 64; ++c)
  18. ink_step_everyone(ctx);
  19. if(ctx->steps < counter) {
  20. ink_gc(ctx);
  21. counter += increment;
  22. }
  23. }
  24. return ctx->routines[coro].panic != INK_ROUTINE_SUCCESS && ctx->routines[coro].panic != INK_ROUTINE_CAN_REUSE;
  25. }