PAX v0.1
Tags: lisp
, Date: 2022-02-16
PAX v0.1 is released. At this point, I consider it fairly complete. Here is the changelog for the last year or so.
New Features
To reduce deployment size, made the MGL-PAX system autoload navigation, documentation generation, and transcription code.
Symbols in the CL package are linked to the hyperspec like this:
PRINT
, which renders asPRINT
.Hyperspec sections and issues can be linked to with the CLHS locative like this:
[lambda lists][CLHS]
, which renders as lambda lists.Added support for
[see this][foo function]
and[see this][foo]
style of linking.Added DECLARATION locative.
Added READTABLE locative.
Added SYMBOL-MACRO locative.
Added METHOD-COMBINATION locative.
Added
EXPORTABLE-REFERENCE-P
to allow specializing decisions on whether to export a symbol inDEFPOST
based onSECTION-PACKAGE
. PAX no longer exports its documentation and drops theMGL-PAX-
prefix from names like@MGL-PAX-LINKS
to reduce clutter.Downcasing now works well and is the default for PAX World.
Transcribe
Transcription consistency checking is now customizable.
Transcription consistency checking and dynamic environment can be controlled for code blocks.
Errors during transcribing are included in the transcript.
Portability
Tested on ABCL, AllegroCL, CCL, CLISP, CMUCL, ECL, and SBCL.
SLIME
M-.
is now as capable on all Lisps as the Swank implementation allows.
Improvements
Generalized, cleaned up, and documented handling trimming of punctuation and plurals.
DOCUMENT
works onSTRING
s.Autolinking for the same name happens at most once per docstring.
Within the same docstring explicit links (in addition to autolinks) also prevent subsequent autolinking of the same object
Unexported superclasses are not listed in the generated documentation of classes.
Improved documentation.
Introduced double backslash escapes to prevent downcasing in addition to linking.
Removed
DESCRIBE-OBJECT
method onSECTION
s. CallDOCUMENT
directly.Made URLs in the generated documentation more stable across implementations and made them more human readable. Existing URLs still work.
Exported api for extending DOCUMENT and FIND-SOURCE
DOCUMENT can produce reasonably readable output with
:FORMAT
:PLAIN
(the default). It is now suitable for use in the REPL as a kind of replacement forCL:DOCUMENTATION
.
Bugs
Made Emacs-side parsing for
M-.
navigation more robust.Fixed documentation generation on
TRACE
d functions.Fixed lots of minor bugs.
Internals
Tests moved to Try.
Added lost of tests.
Made documentation generation faster especially for small jobs.
Improved error reporting.
Autoloading no longer produces warnings on SBCL and fresh SLIME.