lasp/examples/log.lisp
2024-05-03 14:18:42 -05:00

21 lines
653 B
Common Lisp

(define log
(lambda (level message)
(
(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)))))
(define error (lambda (message) (log 0 message)))
(define warn (lambda (message) (log 1 message)))
(define info (lambda (message) (log 2 message)))
(define debug (lambda (message) (log 3 message)))
(define trace (lambda (message) (log 4 message)))
(info "Logger works.")