[climacs-cvs] CVS update: papers/ilc2005/syntax/climacssyntax.tex

Robert Strandh rstrandh at common-lisp.net
Tue May 24 11:43:08 UTC 2005


Update of /project/climacs/cvsroot/papers/ilc2005/syntax
In directory common-lisp.net:/tmp/cvs-serv29989

Modified Files:
	climacssyntax.tex 
Log Message:
Minor fixes. 

Included a paragraph on CL syntax.

Date: Tue May 24 13:43:08 2005
Author: rstrandh

Index: papers/ilc2005/syntax/climacssyntax.tex
diff -u papers/ilc2005/syntax/climacssyntax.tex:1.26 papers/ilc2005/syntax/climacssyntax.tex:1.27
--- papers/ilc2005/syntax/climacssyntax.tex:1.26	Tue May 24 11:20:19 2005
+++ papers/ilc2005/syntax/climacssyntax.tex	Tue May 24 13:43:08 2005
@@ -188,10 +188,10 @@
 combines the previous two implementations, by using a tree whose leaf
 nodes contain the optimized trees representing lines; the benefit of
 this implementation are faster ($O(\log~N)$) operations dealing with
-lines and columns. All the three implementations enable simple and
+lines and columns. All three implementations enable simple and
 inexpensive undo/redo operations because older buffer versions are
 kept as a whole in memory. The space cost of these implementations is
-not negligible, however, significant portions of older buffer versions
+not negligible.  However, significant portions of older buffer versions
 are simply shared with newer buffer versions. Also, it is not
 necessary separately to remember editing operations in undo records,
 in order to preserve precise buffer history. Besides the undo
@@ -238,14 +238,16 @@
 character must be examined to determine the number of octets which are
 stored to represent that character.
 
-The Flexichain library uses an unspecialized vector for its storage,
-which uses one machine word per element, either as an immediate value
-or as a pointer to a larger element. Climacs buffers can contain any
-object, so in a suitably complex syntax and buffer protocol
-implementation any buffer object might correspond to an arbitrary
-number of bytes in the file. For instance, it is concievable that a
-buffer implementation might compress sections of the buffer which are
-not in use.
+The Flexichain library was designed to be able to take advantage of
+specialized lisp vectors for compact storage, though this possibility
+is not used by the Climacs buffer implementation.  Instead Climacs
+uses an unspecialized vector for its storage, which uses one machine
+word per element, either as an immediate value or as a pointer to a
+larger element. Climacs buffers can contain any object, so in a
+suitably complex syntax and buffer protocol implementation any buffer
+object might correspond to an arbitrary number of bytes in the
+file. For instance, it is concievable that a buffer implementation
+might compress sections of the buffer which are not in use.
 
 \section{Syntax Protocol}
 \label{sec:syntax}
@@ -291,7 +293,7 @@
 Climacs includes a parser that uses the Earley \cite{earley} parsing
 algorithm.  There are many advantages of this algorithm in the context
 of text editing.  Perhaps most importantly, it does not require any
-preprocessing of the grammar, which makes it necessary for the entire
+preprocessing of the grammar, which would make it necessary for the entire
 grammar to be known ahead of time.  This means that the user can
 load Lisp files containing additional syntax rules to complete the
 existing ones without having to apply any costly grammar analysis.
@@ -396,6 +398,13 @@
 macro defines basic display functions for the syntax objects produced
 by the parser, with language keywords appearing in a separate color.
 
+Much like the other per-window syntax modules, the one for Common Lisp
+uses high-level macros, some of which come with the Earley parser
+framework in order to build a highly modular grammar for parsing all
+of the Common Lisp language.  This syntax module was built by a group
+of undergraduate students at the University of Bordeaux, and is
+currently being tested and improved. 
+
 \subsection{Per-Buffer Syntax: a tablature editor}
 \label{sec:tabeditor}
 
@@ -547,7 +556,7 @@
 some serious limitations and performance problems of the McCLIM
 library.  Nevertheless, we maintain that using CLIM and McCLIM was the
 best choice, and in fact advantageous to other McCLIM users as well,
-as the deficiencies in McCLIM implementation are being addressed and
+as the deficiencies in the McCLIM implementation are being addressed and
 other improvements made for use with Climacs.
 
 Due to its reliance on fairly well-defined protocols, the Climacs text




More information about the Climacs-cvs mailing list