Chris Hanson [Fri, 16 Jan 2004 20:32:40 +0000 (20:32 +0000)]
Eliminate use of obsolete OUTPUT-PORT/OPERATION.
Chris Hanson [Fri, 16 Jan 2004 20:31:06 +0000 (20:31 +0000)]
Eliminate use of obsolete INPUT-PORT/OPERATION.
Chris Hanson [Fri, 16 Jan 2004 19:43:52 +0000 (19:43 +0000)]
Provide BASE-PORT to parser.
Chris Hanson [Fri, 16 Jan 2004 19:39:53 +0000 (19:39 +0000)]
Fix handling of quote within strings.
Chris Hanson [Fri, 16 Jan 2004 19:26:06 +0000 (19:26 +0000)]
Fix syntax definitions to reflect what the parser does, and simplify
them for clarity.
Chris Hanson [Fri, 16 Jan 2004 19:11:14 +0000 (19:11 +0000)]
Quote some more prefixed atom delimiters.
Chris Hanson [Fri, 16 Jan 2004 19:07:15 +0000 (19:07 +0000)]
Now that comma is an atom delimiter, it's necessary to quote it in
prefixed character constants.
Chris Hanson [Fri, 16 Jan 2004 19:04:38 +0000 (19:04 +0000)]
Pass the shared objects database as an argument to all the handlers,
rather than using a dynamically-bound variable. Pass an additional
argument to indicate when close-paren and close-bracket are allowed.
Fix long-standing bug in handling of unmatched close parens at top
level: the port comparison was never true because of encapsulation.
Chris Hanson [Fri, 16 Jan 2004 06:33:47 +0000 (06:33 +0000)]
Fix some minor bugs. Considerably simplify parsing of characters.
Chris Hanson [Fri, 16 Jan 2004 05:48:23 +0000 (05:48 +0000)]
Compensate for a change to the definition of CHAR-SET/ATOM-DELIMITERS.
Chris Hanson [Fri, 16 Jan 2004 05:44:21 +0000 (05:44 +0000)]
Add name for non-blocking space.
Chris Hanson [Thu, 15 Jan 2004 21:00:16 +0000 (21:00 +0000)]
Initial draft of new parser. Needs more testing, and at least one
feature is missing.
Chris Hanson [Thu, 15 Jan 2004 20:59:12 +0000 (20:59 +0000)]
Implement %STRING->SYMBOL for to eliminate unnecessary copying in
parser.
Chris Hanson [Thu, 15 Jan 2004 20:58:36 +0000 (20:58 +0000)]
Fix incorrect package references for files loaded at the very
beginning of the boot.
Chris Hanson [Sun, 11 Jan 2004 07:18:05 +0000 (07:18 +0000)]
Eliminate INPUT-BUFFER/DISCARD-CHAR, which couldn't be used with
non-blocking input ports because there was no way to tell whether the
char was discarded. Instead, use INPUT-BUFFER/READ-CHAR in its place,
which is only slightly slower and does provide this indication.
Chris Hanson [Sun, 11 Jan 2004 05:25:57 +0000 (05:25 +0000)]
Fix problem: some uses of terminated-region-matcher must behave as
they did prior to revision 1.51.
Chris Hanson [Fri, 9 Jan 2004 21:12:19 +0000 (21:12 +0000)]
Implement REVERSE* and REVERSE*!, like REVERSE and REVERSE! but a
non-null tail element can be specified.
Chris Hanson [Fri, 9 Jan 2004 20:22:22 +0000 (20:22 +0000)]
Fix bug: RANDOM-BYTE-VECTOR has to supply a default state object if
none is given.
Chris Hanson [Thu, 8 Jan 2004 17:52:34 +0000 (17:52 +0000)]
Fix thinko in previous change.
Chris Hanson [Wed, 7 Jan 2004 05:30:44 +0000 (05:30 +0000)]
Eliminate strict-aliasing warning that could potentially cause trouble
when compiled with newer GCC.
Chris Hanson [Wed, 7 Jan 2004 04:50:47 +0000 (04:50 +0000)]
Fix compilation error caused by change to "obstack.h".
Chris Hanson [Wed, 7 Jan 2004 04:50:24 +0000 (04:50 +0000)]
Update copyright dates.
Chris Hanson [Wed, 7 Jan 2004 04:43:34 +0000 (04:43 +0000)]
Eliminate some compiler warnings.
Chris Hanson [Tue, 6 Jan 2004 06:22:37 +0000 (06:22 +0000)]
Implement SRFI 27, except for RANDOM-SOURCE-PSEUDO-RANDOMIZE!. While
I agree that this could be useful, it effectively mandates a
particular PRNG, and I don't want to be forced to use it.
Chris Hanson [Tue, 6 Jan 2004 05:54:32 +0000 (05:54 +0000)]
Use FILE-READABLE? instead of FILE-EXISTS? when testing for
"/dev/urandom".
Chris Hanson [Mon, 5 Jan 2004 21:04:38 +0000 (21:04 +0000)]
Rewrite the code that converts the output of the RNG to usable
numbers. The old methods didn't work; instead we now use the
rejection method, which is the only known good method.
Chris Hanson [Thu, 1 Jan 2004 06:36:23 +0000 (06:36 +0000)]
Update email addresses from ai->csail.
uid67408 [Mon, 29 Dec 2003 07:38:23 +0000 (07:38 +0000)]
Fix typo.
uid67408 [Mon, 29 Dec 2003 07:34:21 +0000 (07:34 +0000)]
Repackage using standard packaging tools.
uid67408 [Mon, 29 Dec 2003 07:32:55 +0000 (07:32 +0000)]
Integrate SSP/XDOC into system.
uid67408 [Mon, 29 Dec 2003 05:25:02 +0000 (05:25 +0000)]
Import files from other places.
uid67408 [Mon, 29 Dec 2003 05:08:15 +0000 (05:08 +0000)]
Export a few more useful procedures.
uid67408 [Mon, 29 Dec 2003 05:07:54 +0000 (05:07 +0000)]
Fix bug: when parsing bracketed content, signal an appropriate error
when the content contains an illegal character, rather than just
failing to match.
Chris Hanson [Wed, 26 Nov 2003 07:00:40 +0000 (07:00 +0000)]
Fix broken behavior of RANDOM when given modulus that exceeds B. The
old implementation just scaled a random element (uniformly distributed
integer between 0 and B-1 inclusive) into the given range; this
strategy works fine for a modulus <= B but breaks pretty badly for
larger B.
In addition, RANDOM now generates an error if the modulus is a real
number but neither an exact positive integer nor an inexact real. The
old behavior in this case was arbitrary, not terribly useful, and
likely to be at odds with the user's expectations.
Here are some tests using the "ent" program that show the problem with
the old RANDOM implementation.
The first example is a 128MB file generated by repeatedly calling
(RANDOM (EXPT 2 64)), slicing each random number into bytes, and
writing the bytes to the file. The result is appalling:
Entropy = 7.500650 bits per byte.
Optimum compression would reduce the size
of this
134217728 byte file by 6 percent.
Chi square distribution for
134217728 samples is
515675588.87, and
randomly would exceed this value 0.01 percent of the times.
Arithmetic mean value of data bytes is 111.9516 (127.5 = random).
Monte Carlo value for Pi is 3.
365650585 (error 7.13 percent).
Serial correlation coefficient is -0.031868 (totally uncorrelated = 0.0).
In contrast, here is the result from a file of the same length
generated using (RANDOM 256). This throws away 75% of each random
element, but shows the quality of the underlying generator:
Entropy = 7.999999 bits per byte.
Optimum compression would reduce the size
of this
134217728 byte file by 0 percent.
Chi square distribution for
134217728 samples is 235.11, and
randomly would exceed this value 75.00 percent of the times.
Arithmetic mean value of data bytes is 127.5060 (127.5 = random).
Monte Carlo value for Pi is 3.
141120183 (error 0.02 percent).
Serial correlation coefficient is -0.000131 (totally uncorrelated = 0.0).
The new design uses enough random elements to guarantee a uniform
distribution, no matter what the size of the modulus, by iteratively
adding and scaling the elements. This preserves the quality of the
underlying generator, as shown by this result:
Entropy = 7.999999 bits per byte.
Optimum compression would reduce the size
of this
134217728 byte file by 0 percent.
Chi square distribution for
134217728 samples is 263.59, and
randomly would exceed this value 50.00 percent of the times.
Arithmetic mean value of data bytes is 127.5114 (127.5 = random).
Monte Carlo value for Pi is 3.
141132700 (error 0.01 percent).
Serial correlation coefficient is -0.000044 (totally uncorrelated = 0.0).
Chris Hanson [Wed, 26 Nov 2003 05:01:25 +0000 (05:01 +0000)]
Fix bug: DOUBLE_TO_FIXNUM_P was using limits that assumed the
conversion used rounding; in fact, it uses truncation.
Chris Hanson [Wed, 26 Nov 2003 02:27:14 +0000 (02:27 +0000)]
Eliminate optional time-zone argument to iso8601 parsers.
Chris Hanson [Tue, 25 Nov 2003 23:55:33 +0000 (23:55 +0000)]
Several changes to ISO-8601 time:
1. Allow space to separate date and time on input.
2. Generate space as separator rather than T.
3. Allow seconds to be omitted on input.
Chris Hanson [Tue, 11 Nov 2003 04:46:43 +0000 (04:46 +0000)]
Implement PGSQL-CONN-OPEN?.
Chris Hanson [Tue, 11 Nov 2003 02:03:16 +0000 (02:03 +0000)]
Update for changes to finalizer.
Chris Hanson [Tue, 11 Nov 2003 01:53:38 +0000 (01:53 +0000)]
Allow a channel to be closed more than once. This is the previous
behavior, and some callers expect to be able to do this.
Chris Hanson [Tue, 11 Nov 2003 01:46:43 +0000 (01:46 +0000)]
Don't use pathname as prompt argument to command; instead coerce to
namestring so that command history can be understood.
Chris Hanson [Tue, 11 Nov 2003 01:31:28 +0000 (01:31 +0000)]
Signal an error if ADD-TO-GC-FINALIZER! or REMOVE-FROM-GC-FINALIZER!
is passed a finalized object. In REMOVE-ALL-FROM-GC-FINALIZER!,
finalize each object even if the object is already gone.
Chris Hanson [Mon, 10 Nov 2003 21:46:35 +0000 (21:46 +0000)]
Simplify gc-finalizer interface to guarantee that it is used
correctly.
Chris Hanson [Mon, 10 Nov 2003 21:33:07 +0000 (21:33 +0000)]
Remove references to %DELETE-DIB.
Chris Hanson [Sun, 9 Nov 2003 04:41:02 +0000 (04:41 +0000)]
Rationalize treatment of gc-finalized data structures.
Chris Hanson [Fri, 7 Nov 2003 20:35:48 +0000 (20:35 +0000)]
Make sure channel is appropriately marked when it is closed.
Chris Hanson [Fri, 7 Nov 2003 20:07:47 +0000 (20:07 +0000)]
Change PGSQL-GET-VALUE to return #F if field is NULL.
Chris Hanson [Thu, 6 Nov 2003 04:17:39 +0000 (04:17 +0000)]
Add missing dload_initialize_file().
Chris Hanson [Thu, 6 Nov 2003 04:16:50 +0000 (04:16 +0000)]
Add condition types to identify postgresql errors. Add
CALL-WITH-PGSQL-CONN.
Chris Hanson [Thu, 6 Nov 2003 00:16:21 +0000 (00:16 +0000)]
Delete useless PGSQL-RESULT-STATUS-STRING.
Chris Hanson [Mon, 3 Nov 2003 21:32:31 +0000 (21:32 +0000)]
Canonicalize strings in element content.
Chris Hanson [Mon, 3 Nov 2003 21:31:23 +0000 (21:31 +0000)]
Canonicalize strings in element content.
Chris Hanson [Fri, 31 Oct 2003 20:45:35 +0000 (20:45 +0000)]
Fix CPUID instruction test; old test only did 386 detection and
omitted 486 detection.
Chris Hanson [Fri, 31 Oct 2003 05:31:15 +0000 (05:31 +0000)]
Don't require the target of a rename or copy operation to exist. The
server should create the appropriate containers and folders.
Chris Hanson [Fri, 24 Oct 2003 04:53:51 +0000 (04:53 +0000)]
Change default of X-PASTE-FROM-CLIPBOARD to #T. This is the correct
behavior for modern desktops, and for interoperability with Emacs 21.
Chris Hanson [Wed, 15 Oct 2003 17:07:04 +0000 (17:07 +0000)]
GC was blowing up with SIGSEGV when run under emacs, because recent
changes to add threading support to output ports caused consing during
the GC.
Chris Hanson [Wed, 15 Oct 2003 01:25:14 +0000 (01:25 +0000)]
Don't put empty character data strings in element content.
Chris Hanson [Sat, 11 Oct 2003 04:00:24 +0000 (04:00 +0000)]
Change CALL-ON-PARSER-BUFFER-TAIL to CALL-WITH-PARSER-BUFFER-TAIL.
Chris Hanson [Sat, 11 Oct 2003 03:48:16 +0000 (03:48 +0000)]
Implement CALL-ON-PARSER-BUFFER-TAIL.
Chris Hanson [Fri, 10 Oct 2003 17:35:42 +0000 (17:35 +0000)]
Fix typo.
Chris Hanson [Fri, 10 Oct 2003 17:35:01 +0000 (17:35 +0000)]
Allow IGNORE-ERRORS to take an optional second argument that maps the
error condition to something else.
Chris Hanson [Wed, 1 Oct 2003 18:07:41 +0000 (18:07 +0000)]
Implement ISO 8601 date/time strings.
Chris Hanson [Tue, 30 Sep 2003 17:17:22 +0000 (17:17 +0000)]
Define and export DECODED-TIME?.
Chris Hanson [Tue, 30 Sep 2003 04:33:46 +0000 (04:33 +0000)]
Second draft: this one uses a fully lazy copy of the XML structure so
that the algorithms are concise _and_ efficient. This design also
allows EQ? to be used when comparing nodes.
Chris Hanson [Tue, 30 Sep 2003 04:22:59 +0000 (04:22 +0000)]
Implement STREAM-LAST-PAIR.
Chris Hanson [Tue, 30 Sep 2003 04:16:45 +0000 (04:16 +0000)]
Eliminate style that uses external LETREC expressions; it makes the
code hard to read and doesn't provide any benefit.
Chris Hanson [Tue, 30 Sep 2003 03:39:10 +0000 (03:39 +0000)]
Implement STREAM-APPEND-MAP. Use RECEIVE rather than
CALL-WITH-VALUES.
Chris Hanson [Tue, 30 Sep 2003 02:13:56 +0000 (02:13 +0000)]
Fix typo.
Chris Hanson [Sun, 28 Sep 2003 04:12:54 +0000 (04:12 +0000)]
Initial draft. This design has some bugs, so I'm checkpointing prior
to redesign.
Chris Hanson [Fri, 26 Sep 2003 19:39:06 +0000 (19:39 +0000)]
Another major upheaval, this time to give attributes an opaque
representation.
Chris Hanson [Fri, 26 Sep 2003 13:34:10 +0000 (13:34 +0000)]
Fix problem with Edwin consuming lots of CPU while waiting for input.
Chris Hanson [Fri, 26 Sep 2003 05:35:43 +0000 (05:35 +0000)]
Restrict attribute values to be strings rather than lists of strings
and entity references. In cases where we used to insert an entity
reference into an attribute value or into content, signal an error.
Create named accessors for the name and value of an attribute. Soon I
will change the representation.
Chris Hanson [Fri, 26 Sep 2003 04:27:32 +0000 (04:27 +0000)]
Fix bug in handling of processing instructions.
Chris Hanson [Fri, 26 Sep 2003 03:56:58 +0000 (03:56 +0000)]
Major update to rationalize naming structure. The implementation of
names has been moved to its own file. There are now fully fleshed-out
XML-QNAME and XML-NMTOKEN abstractions, so that it's possible to talk
about all those names that aren't affected by namespaces (e.g.
everything in the DTD).
Chris Hanson [Fri, 26 Sep 2003 01:00:14 +0000 (01:00 +0000)]
Change terminology to be more in accord with W3C documents:
universal-name => expanded-name
simple => qname
default-xml-namespace-iri => null-xml-namespace-iri
Chris Hanson [Fri, 26 Sep 2003 00:35:52 +0000 (00:35 +0000)]
Export XML-IRI and XMLNS-IRI. Change MAKE-XML-NAME to signal an error
if the xml: or xmlns: prefixes are used with the wrong IRI.
Chris Hanson [Thu, 25 Sep 2003 16:51:56 +0000 (16:51 +0000)]
Change URI -> IRI in remaining places.
Chris Hanson [Thu, 25 Sep 2003 16:48:14 +0000 (16:48 +0000)]
Efficiency tweak to XML-ELEMENT-NAMESPACE-IRI.
Chris Hanson [Wed, 24 Sep 2003 22:39:12 +0000 (22:39 +0000)]
Implement abstraction for null namespace prefix and default namespace
URI, then change their representations to be something other than #F.
Change references to namespace "URI" to be "IRI" instead. Make some
changes to enhance support for namespace declaration parsing.
Chris Hanson [Wed, 24 Sep 2003 19:21:58 +0000 (19:21 +0000)]
New procedures STRING-HEAD->SYMBOL and STRING-TAIL->SYMBOL.
Chris Hanson [Wed, 24 Sep 2003 04:55:56 +0000 (04:55 +0000)]
Fix thinko.
Chris Hanson [Wed, 24 Sep 2003 04:47:57 +0000 (04:47 +0000)]
Fix typo.
Chris Hanson [Wed, 24 Sep 2003 04:19:01 +0000 (04:19 +0000)]
Fix typo.
Chris Hanson [Wed, 24 Sep 2003 04:17:45 +0000 (04:17 +0000)]
Implement GUARANTEE- procedures for all types. Implement
XML-ELEMENT-NAMESPACE-DECLS.
Chris Hanson [Wed, 24 Sep 2003 03:50:48 +0000 (03:50 +0000)]
Implement namespace URI abstraction.
Chris Hanson [Wed, 24 Sep 2003 03:38:57 +0000 (03:38 +0000)]
Implement SUBSTRING->SYMBOL.
Chris Hanson [Wed, 24 Sep 2003 03:26:23 +0000 (03:26 +0000)]
Implement new procedures (and use where appropriate):
SIMPLE-XML-ATTRIBUTE-VALUE?
XML-NAME-LOCAL=?
XML-NAME-PREFIX=?
XML-NAME-SIMPLE=?
XML-NAME-URI=?
Chris Hanson [Wed, 24 Sep 2003 01:57:52 +0000 (01:57 +0000)]
Eliminate OS/FILE-TYPE-TO-MAJOR-MODE; use single list for all systems.
Chris Hanson [Tue, 23 Sep 2003 16:25:39 +0000 (16:25 +0000)]
Fix some problems with the HTML paragraph separator.
Chris Hanson [Tue, 23 Sep 2003 03:37:16 +0000 (03:37 +0000)]
Use quoting so that subprocess arguments can include spaces. This
won't work with cygwin programs, but it should work fine for
alternative shells such as 4NT.
Chris Hanson [Fri, 19 Sep 2003 03:26:50 +0000 (03:26 +0000)]
Fix problem with obsolete use of backslash in symbols.
Chris Hanson [Fri, 19 Sep 2003 00:39:32 +0000 (00:39 +0000)]
Implement external representation for random-state objects.
Chris Hanson [Thu, 18 Sep 2003 16:51:59 +0000 (16:51 +0000)]
Change release version to 7.7.90 for test release.
Chris Hanson [Wed, 17 Sep 2003 03:20:45 +0000 (03:20 +0000)]
New procedure XML-NAME-SIMPLE. Change printed representation of
elements to show the simple name.
Chris Hanson [Tue, 16 Sep 2003 04:32:59 +0000 (04:32 +0000)]
Fix typo in namespace-prefix parsing.
Chris Hanson [Mon, 15 Sep 2003 20:22:49 +0000 (20:22 +0000)]
Fix bug in handling of namespace declarations.
Chris Hanson [Sun, 14 Sep 2003 01:52:35 +0000 (01:52 +0000)]
Strip double-quote characters from path elements.
Chris Hanson [Sun, 14 Sep 2003 01:01:45 +0000 (01:01 +0000)]
Strip double-quote characters from path elements.
Chris Hanson [Sun, 14 Sep 2003 00:20:42 +0000 (00:20 +0000)]
Strip double-quote characters from path elements.
Chris Hanson [Thu, 11 Sep 2003 18:38:21 +0000 (18:38 +0000)]
Change namespace URIs to be symbols.