cl-scopes/forge/forge.lisp

39 lines
622 B
Common Lisp

;;; cl-scopes/forge - may the forge be with you!
;;;; A Forth-like interpreter implemented in Common Lisp.
(defpackage :scopes/forge
(:use :common-lisp)
(:export #:hello #:new-forge-env #:data-stack #:exec
#:add))
(in-package :scopes/forge)
(defun new-forge-env ()
nil)
(defun exec (fe &rest code)
code
fe)
(defun data-stack (fe)
fe)
; forge primitives
(defun add (fe)
(pushd (+ (popd fe) (popd fe)) fe ))
; dummy exampled, to be removed
(defun hello ()
(format t "Hello Common Lisp - 2024-04-19"))
; internal definitions
(defun popd (fe)
(pop fe))
(defun pushd (fe v)
(push v fe))