load-file: accept empty file or final comment, return nil
[jackhill/mal.git] / crystal / step0_repl.cr
CommitLineData
85c1b0c0 1#! /usr/bin/env crystal run
2
5185c56e 3require "readline"
85c1b0c0 4
5# Note:
6# Employed downcase names because Crystal prohibits uppercase names for methods
7
8def read(x)
5185c56e 9 x
85c1b0c0 10end
11
12def eval(x)
5185c56e 13 x
85c1b0c0 14end
15
16def print(x)
5185c56e 17 x
85c1b0c0 18end
19
20def rep(x)
5185c56e 21 read(eval(print(x)))
85c1b0c0 22end
23
5185c56e
OR
24while line = Readline.readline("user> ")
25 puts rep(line)
85c1b0c0 26end