mirror of
https://gitlab.com/embeddable-common-lisp/ecl.git
synced 2026-01-14 05:12:38 -08:00
Embeddable Common-Lisp main repository.
Our ffi isn't uffi 2.0 compatible and most systems wants this, when they say (require 'uffi). Also if system has asdf dependency on quicklisp) we have package name error. We'll depend with UFFI 2.0 compability on cffi-uffi-compat, what is the saniest approach. Some ECL specific patches will land there soon to improve performance - no internal FFI api will change. It's just nick removal. Signed-off-by: Daniel Kochmański <daniel@turtleware.eu> |
||
|---|---|---|
| contrib | ||
| examples | ||
| msvc | ||
| src | ||
| .gitignore | ||
| CHANGELOG | ||
| configure | ||
| Copyright | ||
| INSTALL | ||
| LGPL | ||
| Makefile.in | ||
| README | ||
You can find the preprocessed documentation in ./doc in HTML format.
Debugging via GDB:
------------------
src/util/gdbinit (and, therefore, build/.gdbinit) defines
a few convenience things - T, NIL, and, even more important,
ecl_print.
This is a GDB function that prints a 'cl_object' human-readably:
(gdb) ecl_print x
$39 = t_fixnum
$40 = (ecl_base_char *) 0x42b4000 "10652336"
And another that helps to see a thread state:
(gdb) ecl_eval "cl:*package*"
Please note that double quotes have to be escaped:
(gdb) ecl_eval "(concatenate 'string \"a\" \"b\")"
Both will give a string with "readable" content, and a pretty-printed one.
Using VIM:
----------
.git/tags is a VIM-compatible tag file; if you're using
the fugitive plugin, it will be used automatically.
About testing:
--------------
make check
to (get, initialize and) run the tests
make -C build/tests do-regressions
make -C build/tests do-ansi
make -C build/tests do-quicklisp
make -C build/tests do-mop-tests
runs the specified tests
make -C build/tests/ show-fails
prints results