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