aboutsummaryrefslogtreecommitdiffstats
path: root/shell.c
blob: b19add8b9d3b6cf90605e95f3372f48fc3a6be85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <parser.h>

#include <stdio.h>

void test(stack_t *stack)
{
	printf("%s\n", stack[0]);
}

int main(int argc, char *argv[])
{
	interpreter interp;

	interpreter_init(&interp);
	interpreter_define_value(&interp, "answer", "42");
	interpreter_define_cfunc(&interp, "test", test);

	if (argc > 1) {
		for (int i = 1; i < argc; i++) {
			int result = interpreter_doline(&interp, argv[i]);
			if (result != 0)
				printf("%d\n", result);
		}
	}

	return 0;
}