refining the examples

This commit is contained in:
able 2024-05-03 14:45:58 -05:00
parent d34374858d
commit bc78a0a892
2 changed files with 23 additions and 14 deletions

View file

@ -1,15 +1,19 @@
(define send-message
(lambda (ptr-to-message length-of-message)
(asm
(li64 r1 3)
(li64 r2 1)
(li64 r3 ptr-to-message)
(li64 r4 length-of-message)
(eca))))
(define log
(lambda (level message)
(lambda (level string)
(
(append (message level))
(define ptr-to-message (ptr-to message))
(define length-of-message (length message))
(asm
(li64 r1 3)
(li64 r2 1)
(li64 r3 ptr-to-message)
(li64 r4 length-of-message)
(eca)))))
(append (string level))
(define ptr-to-message (ptr-to string))
(define length-of-message (length string))
(send-message ptr-to-message length-of-message))))
(define error (lambda (message) (log 0 message)))
(define warn (lambda (message) (log 1 message)))

View file

@ -1,9 +1,14 @@
(define println
(lambda (s)
(print
(append s "\n"))))
(define repl
(lambda () (
(print "λ -> ")
(print
(eval
(read)))
(print "\n")
(println
(append
("val -> "
(eval (read)))))
(repl))))
(repl)