scm-to-vm/scmvm.scm
2025-06-09 09:02:20 -05:00

27 lines
652 B
Scheme
Executable File

#! /bin/sh
exec guile -L . -e main -s "$0" "$@"
!#
(use-modules (scmvm vm)
(scmvm assembler)
(srfi srfi-11)
(srfi srfi-26)
(ice-9 control))
(define (make-debugger source asm)
())
(define (debug file)
(let*-values ([(source) (open-file file)]
[(asm) (call-with-output-bytevector (cut assemble-file file <>))]
[(begin-debugger resume-debugger) (make-debugger source asm)])
(% (begin-debugger)
(resume-debugger))))
(define (main . args)
(when (null? args)
(usage))
(case (car args)
[(help) (usage)]
[(debug) (apply debug (cdr args))]))