Commit | Line | Data |
---|---|---|
9a54ea18 JM |
1 | function step0_repl(varargin), main(varargin), end |
2 | ||
a8d58c93 | 3 | % read |
9a54ea18 JM |
4 | function ret = READ(str) |
5 | ret = str; | |
6 | end | |
7 | ||
a8d58c93 | 8 | % eval |
9a54ea18 JM |
9 | function ret = EVAL(ast, env) |
10 | ret = ast; | |
11 | end | |
12 | ||
a8d58c93 | 13 | |
9a54ea18 JM |
14 | function ret = PRINT(ast) |
15 | ret = ast; | |
16 | end | |
17 | ||
a8d58c93 JM |
18 | % REPL |
19 | function ret = rep(str, env) | |
20 | ret = PRINT(EVAL(READ(str), env)); | |
9a54ea18 JM |
21 | end |
22 | ||
23 | function main(args) | |
24 | while (true) | |
25 | line = input('user> ', 's'); | |
a8d58c93 | 26 | fprintf('%s\n', rep(line, '')); |
9a54ea18 JM |
27 | end |
28 | end |