diff --git a/Makefile b/Makefile deleted file mode 100644 index 9cdf6b6..0000000 --- a/Makefile +++ /dev/null @@ -1,14 +0,0 @@ -LISP ?= sbcl - -default: build - -# https://lispcookbook.github.io/cl-cookbook/scripting.html -build: - $(LISP) --eval '(require :asdf)' \ - --eval '(load "ywatds.asd")' \ - --eval '(asdf:load-system "ywatds")' \ - --eval '(asdf:make :ywatds)' \ - --eval '(quit)' - -clean: - -rm ywatds *~ *.backup API.md diff --git a/build.lisp b/build.lisp new file mode 100644 index 0000000..0abdd9e --- /dev/null +++ b/build.lisp @@ -0,0 +1,5 @@ +(require :asdf) +(load "ywatds.asd") +(asdf:load-system :ywatds) +(asdf:make :ywatds) +(quit) diff --git a/tracks/conns.lisp b/tracks/conns.lisp index 5039dca..ba6a613 100644 --- a/tracks/conns.lisp +++ b/tracks/conns.lisp @@ -4,8 +4,8 @@ (defparameter *conns-shared* nil) (defstruct trackside - (:pos (error "no coordinates specified") :type aux:v3d) - (:side (error "no side specified") :type (integer 0 15))) + (:pos (error "no coordinates specified") :type aux:v3d :read-only t) + (:side (error "no side specified") :type (integer 0 15) :read-only t)) (defmacro trackside (pos side) (alexandria:once-only @@ -22,8 +22,8 @@ (json:encode-json (list (cons "p" p) (cons "s" side))))) (defstruct dir - (:c 0 :type (integer 0 15)) - (:r 0 :type (integer 0 1))) + (:c 0 :type (integer 0 15) :read-only t) + (:r 0 :type (integer 0 1) :read-only t)) (defmethod print-object ((obj dir) s) (print-unreadable-object (obj s)