[armedbear-cvs] r13680 - trunk/abcl/doc/manual

mevenson at common-lisp.net mevenson at common-lisp.net
Thu Oct 27 13:28:54 UTC 2011


Author: mevenson
Date: Thu Oct 27 06:28:49 2011
New Revision: 13680

Log:
Introspect docstrings from live ABCL image for the manual.

Eventually, GROVEL-DOCSTRINGS-AS-TEX will produce nicely formatted and
cross-reference labeled TeX source for inclusion in "java.tex",
"extensions.tex", and "threads.tex".  But today is not that day.

Added:
   trunk/abcl/doc/manual/grovel.lisp
Modified:
   trunk/abcl/doc/manual/abcl.tex

Modified: trunk/abcl/doc/manual/abcl.tex
==============================================================================
--- trunk/abcl/doc/manual/abcl.tex	Thu Oct 27 04:56:07 2011	(r13679)
+++ trunk/abcl/doc/manual/abcl.tex	Thu Oct 27 06:28:49 2011	(r13680)
@@ -14,12 +14,14 @@
 
 \chapter{Introduction}
 
-Armed Bear is a (mostly) conforming implementation of the ANSI Common
-Lisp standard.  This manual documents the Armed Bear Common Lisp
+Armed Bear is a conforming implementation of the ANSI Common Lisp
+standard (see \ref{chapter:conformance} on page
+\pageref{chapter:conformance} which states the details of the
+conformance level.  This manual documents the Armed Bear Common Lisp
 implementation for users of the system.
 
 \subsection{Version}
-This manual corresponds to abcl-1.0.0,  released on October 22, 2011.
+This manual corresponds to abcl-1.0.0, released on October 22, 2011.
 
 \subsection{License}
 
@@ -117,6 +119,7 @@
 JVM implementation that \textsc{ABCL} finds itself hosted upon.
 
 \chapter{Conformance}
+\label{chapter:conformance}
 
 \section{ANSI Common Lisp}
 \textsc{ABCL} is currently a (non)-conforming ANSI Common Lisp
@@ -202,8 +205,9 @@
 \subsection{Low-level Java API}
 
 We define a higher level Java API in the \ref{topic:Higher level Java
-  API: JSS}(JSS package) which is available in the \code{contrib/} \ref{topic:contrib}
-directory. This package is described later in this document.  This
+  API: JSS}(JSS package) which is available in the \code{contrib/}
+\ref{topic:contrib} directory . This package is described later in
+this document, see \ref{sec:jss} on page \pageref{sec:jss}.  This
 section covers the lower level API directly available after evaluating
 \code{(require 'JAVA)}.
 
@@ -1020,6 +1024,7 @@
 required source and fasls in a jar archive.
 
 \section{jss}
+\label{sec:jss}
 
 To one used to a syntax that can construct macros, the Java syntax
 sucks, so we introduce the \#" macro.

Added: trunk/abcl/doc/manual/grovel.lisp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/abcl/doc/manual/grovel.lisp	Thu Oct 27 06:28:49 2011	(r13680)
@@ -0,0 +1,23 @@
+#-abcl We're only grovelling ABCL docstrings here.
+(defun grovel-docstrings-as-tex (&optional (package (find-package :java)))
+  (with-open-file (stream "java.tex" :direction :output)
+    (loop :for symbol :being :each :external-symbol :of package 
+       :collecting (symbol-tex symbol))))
+
+(asdf:load-system 'swank) ;; XXX Does this load the SWANK-BACKEND package as well
+
+(defun symbol-as-tex (symbol)
+  "Return the TeX representation of a SYMBOL as a string."
+  (let (type documentation arglist 
+             (doc (swank-backend:describe-symbol-for-emacs symbol)))
+    (cond ((find :function doc)
+           (setf type :function
+                 documentation (second doc)))
+          ((find :variable doc)
+           (setf type :variable 
+                 documentation (second doc))))
+    (warn "Unfinished implementation.")))
+  
+          
+    
+     
\ No newline at end of file




More information about the armedbear-cvs mailing list