make forge:repl working, with ? and ?? words; test-forge: keep *forge-env*

This commit is contained in:
Helmut Merz 2024-05-29 12:03:38 +02:00
parent ef7ee0b9f4
commit fb88c0b934
2 changed files with 7 additions and 3 deletions

View file

@ -115,6 +115,8 @@
(reg * (pushd (* (popd) (popd))))
(reg dup (pushd (car (dstack))))
(reg swap (let ((a (popd)) (b (popd))) (pushd a) (pushd b)))
(reg ? (format t "~a~%" (popd)))
(reg ?? (format t "~a~%" (dstack)))
(register 'lit #'lit)
(register 'wrap #'wrap)
@ -134,7 +136,8 @@
(concatenate 'string "(" s ")"))))
(defun repl ()
(do ((input (read-line) (read-line))) ((string= input "q") nil)
(do ((input (read-line) (read-line)))
((string= input "q") (dstack))
(exec-str input)))
(defun exec (code)

View file

@ -12,8 +12,9 @@
(in-package :scopes/test-forge)
(defun run ()
(let ((t:*test-suite* (t:test-suite "forge"))
(forge:*forge-env* (forge:forge-env)))
(let ((t:*test-suite* (t:test-suite "forge")))
;(forge:*forge-env* (forge:forge-env)))
(setf forge:*forge-env* (forge:forge-env))
(forge:setup-builtins)
(test-iseq)
(test-exec)