(ql:quickload "cl-project") (cl-project:make-project #P"./path-to-project/root/")
Additional explaination
“ASDF2's default setup also scans a directory called ~/.local/share/common-lisp/source/, so if you don't mind putting projects there, …”
You don’t have to: just make a symbolic link to your projects directory here. ln -s ~/path/to/my/projects ~/.local/share/common-lisp/source/
ln -s ~/Dev/lisp/src/ ~/.local/share/common-lisp/source/
- Create the file ∼/.config/common-lisp/source-registry.conf.d/projects.conf if it does not exist on your system
- Assuming that you have cloned the repository for this book (loving-common-lisp) in your home directory (if you have a special place where you clone git repos, adjust the following), edit this configuration file to look like this:
1 (:tree 2 (:home "loving-common-lisp/src/") 3 )
This will make subdirectories of loving-common-lisp/src/ load-able by using Quicklisp.
(ql:quickload :raytracer)
,in-package raytracer
To run this test file, execute `(asdf:test-system :raytracer)' in your Lisp.
Or, start stand-alone SBCL, load test-package
(ql:quickload :raytracer/tests)
and run tests with
(rove:run :raytracer/tests)
(asdf:operate 'asdf:test-op :raytracer)
(ql:quickload :raytracer)
(load "main.lisp")
- Taken from Debugging Lisp
Turn off optimiztions to see all steps in (step (function....)):
(declaim (optimize (speed 0) (space 0) (debug 3)))
-
Insert dynamically
(break)
-
Point to a frame and press 'r' to restart on frame
-
Right click on object like
#<POINT {10031070F3}>
, or C-c C-v TAB -
Use object like
(point-x #<POINT {10031070F3}>)
-
SPC mgg to edit defintion at point
-
M-, to return to last point
-
M-n, and M-p to jump thru notes of compile warnings
-
,h < who calls
-
,hH Hyperspec of function at point
-
Trace function with C-c C-t, while on the function name.
-
C-c, C-t to untrace.
-
After execution, call Trace Dialog with C-c T.
-
"Fetch next batch"
(find-class 'point)
Update-instance-for-redefined-class
to redefine a class dynamically