1
1
mirror of https://github.com/kanaka/mal.git synced 2024-09-21 10:37:58 +03:00
mal/scheme/step0_repl.scm

34 lines
521 B
Scheme
Raw Normal View History

2017-09-02 01:46:52 +03:00
(import (scheme base))
(import (scheme write))
(define (READ input)
input)
(define (EVAL input)
input)
(define (PRINT input)
input)
(define (rep input)
(PRINT (EVAL (READ input))))
(define (readline prompt)
(display prompt)
(flush-output-port)
(let ((input (read-line)))
(if (eof-object? input)
#f
input)))
(define (main)
(let loop ()
(let ((input (readline "user> ")))
(when input
(display (rep input))
(newline)
(loop))))
(newline))
(main)