Chris Hanson [Tue, 18 Dec 2001 21:55:54 +0000 (21:55 +0000)]
Attach syntax table to (RUNTIME) environment.
Chris Hanson [Tue, 18 Dec 2001 21:42:23 +0000 (21:42 +0000)]
Eliminate references to EDWIN-SYNTAX-TABLE and CLASS-SYNTAX-TABLE.
Chris Hanson [Tue, 18 Dec 2001 21:35:40 +0000 (21:35 +0000)]
(RUNTIME URL) package must inherit from (RUNTIME).
Chris Hanson [Tue, 18 Dec 2001 21:35:11 +0000 (21:35 +0000)]
Eliminate references to EDWIN-SYNTAX-TABLE and CLASS-SYNTAX-TABLE.
Chris Hanson [Tue, 18 Dec 2001 21:32:08 +0000 (21:32 +0000)]
Eliminate references to syntax tables.
Chris Hanson [Tue, 18 Dec 2001 21:30:57 +0000 (21:30 +0000)]
Use GUARANTEE-SYNTAX-TABLE.
Chris Hanson [Tue, 18 Dec 2001 21:21:43 +0000 (21:21 +0000)]
Default syntax table must be ENVIRONMENT-SYNTAX-TABLE of load
environment.
Chris Hanson [Tue, 18 Dec 2001 20:51:05 +0000 (20:51 +0000)]
Rename EXTEND-IC-ENVIRONMENT to EXTEND-INTERPRETER-ENVIRONMENT.
Chris Hanson [Tue, 18 Dec 2001 20:49:33 +0000 (20:49 +0000)]
Don't generate syntax tables automatically in EXTEND-IC-ENVIRONMENT.
Chris Hanson [Tue, 18 Dec 2001 20:47:46 +0000 (20:47 +0000)]
Extend syntax-table abstraction so that it works on environments as
well as syntax tables.
Chris Hanson [Tue, 18 Dec 2001 20:47:18 +0000 (20:47 +0000)]
Use GUARANTEE-SYNTAX-TABLE.
Chris Hanson [Tue, 18 Dec 2001 20:46:59 +0000 (20:46 +0000)]
Create procedures to generate unassigned and unbound objects.
Chris Hanson [Tue, 18 Dec 2001 20:46:36 +0000 (20:46 +0000)]
Replace magic code by reference to MAKE-UNMAPPED-UNBOUND-REFERENCE-TRAP.
Chris Hanson [Tue, 18 Dec 2001 20:44:13 +0000 (20:44 +0000)]
Create procedure to generate unassigned objects.
Chris Hanson [Tue, 18 Dec 2001 19:35:50 +0000 (19:35 +0000)]
Guarantee that source binding of an import is defined. Source binding
of an export is always defined by the package description.
Chris Hanson [Tue, 18 Dec 2001 19:09:58 +0000 (19:09 +0000)]
Don't ever mark the source binding of a link as new. This was an
attempt to work around problems with the linker, but the problem is in
the linker and not here; the linker should automatically generate the
source binding if it is missing.
Chris Hanson [Tue, 18 Dec 2001 18:40:07 +0000 (18:40 +0000)]
Restructure packaging so that all runtime-system packages inherit from
the (RUNTIME) package. We will use the latter as a place to attach
the syntax from SYNTAX-TABLE/SYSTEM-INTERNAL.
Chris Hanson [Tue, 18 Dec 2001 18:27:24 +0000 (18:27 +0000)]
Fix typo in comment.
Chris Hanson [Mon, 17 Dec 2001 22:05:33 +0000 (22:05 +0000)]
Athlon model 2 is OK as well.
Chris Hanson [Mon, 17 Dec 2001 20:27:54 +0000 (20:27 +0000)]
Fine tune the code that decides when to use CPUID. For now, use it
only for Athlon model 1, 2, 3, or 4 processors. According to AMD, the
model 6 is OK, and perhaps the model 7 as well. The model 4 is known
to be bad, and models 1, 2, and 3 are probably bad too. No Intel
processors are known to be bad.
Chris Hanson [Mon, 17 Dec 2001 19:41:58 +0000 (19:41 +0000)]
Fix: ia32_cache_synchronize is supposed to be an ordinary C procedure,
not an "entry point" for "cmpint.c".
Chris Hanson [Mon, 17 Dec 2001 19:29:44 +0000 (19:29 +0000)]
Use ".586p" rather than ".386p"; otherwise the CPUID instruction isn't
recognized.
Chris Hanson [Mon, 17 Dec 2001 18:21:25 +0000 (18:21 +0000)]
Use "install --preserve-timestamps" if it is available.
Chris Hanson [Mon, 17 Dec 2001 18:03:44 +0000 (18:03 +0000)]
Fix default target; it wasn't including everything.
Chris Hanson [Mon, 17 Dec 2001 17:40:59 +0000 (17:40 +0000)]
Change package system to conditionalize everything according to the
operating-system type. All output files are now OS-specific, e.g.
"runtime.pkg" produces output files "runtime-unx.{pkd,fre,crf}".
Package files can now use the conditionalization variable OS-TYPE.
Chris Hanson [Mon, 17 Dec 2001 04:42:01 +0000 (04:42 +0000)]
Allow syntax-table information to be left out of FFI tables. This
simplifies transition to new system in which syntax information is
stored in environments.
Chris Hanson [Mon, 17 Dec 2001 04:32:10 +0000 (04:32 +0000)]
Update to reflect that things have changed since the 7.6.0 release.
Chris Hanson [Sun, 16 Dec 2001 06:01:33 +0000 (06:01 +0000)]
Add explicit cache synchronization support to work around a bug in the
Athlon.
Chris Hanson [Fri, 7 Dec 2001 03:57:00 +0000 (03:57 +0000)]
Must call MAP_TO_UNASSIGNED on value of definition when creating a new
binding.
Chris Hanson [Wed, 5 Dec 2001 02:08:02 +0000 (02:08 +0000)]
Update autoconf config.* files.
Chris Hanson [Mon, 3 Dec 2001 18:15:22 +0000 (18:15 +0000)]
Add (sleep-for 0.1) after signalling an interrupt, in order to work
around race condition.
Chris Hanson [Mon, 3 Dec 2001 18:13:08 +0000 (18:13 +0000)]
Change imail-forward to (by default) ask whether to forward all
headers.
Chris Hanson [Mon, 3 Dec 2001 05:52:12 +0000 (05:52 +0000)]
Merge in changes from Emacs 20 and Emacs 21. Use
`process-send-string' rather than `send-string'. Implement
xscheme-delete-output command (C-c C-o in *scheme* buffer).
Chris Hanson [Tue, 27 Nov 2001 16:57:15 +0000 (16:57 +0000)]
URL support no longer in runtime system; remove reference.
Chris Hanson [Tue, 27 Nov 2001 04:20:31 +0000 (04:20 +0000)]
Change default target so that it doesn't try to generate "utabmd.bin".
The "all" target remains unchanged.
Chris Hanson [Tue, 27 Nov 2001 02:53:22 +0000 (02:53 +0000)]
Make another attempt to fix the problem with imports. The previous
fix didn't work when the analysis information was absent.
Chris Hanson [Mon, 26 Nov 2001 20:26:36 +0000 (20:26 +0000)]
Update FSF address.
Chris Hanson [Mon, 26 Nov 2001 19:52:48 +0000 (19:52 +0000)]
Distribution no longer includes "compiler.com" or "edwin.com" bands.
Chris Hanson [Mon, 26 Nov 2001 19:52:11 +0000 (19:52 +0000)]
Distribution no longer includes "compiler.com" or "edwin.com" bands.
Chris Hanson [Mon, 26 Nov 2001 19:48:14 +0000 (19:48 +0000)]
Update for 7.6.0 release. Rewrite release notes; update version
references; update list of supported Windows versions; tweak wording
that describes how to start Scheme under Windows.
Chris Hanson [Mon, 26 Nov 2001 19:21:37 +0000 (19:21 +0000)]
Document M-o command. Add section describing new sort commands.
Chris Hanson [Mon, 26 Nov 2001 19:15:10 +0000 (19:15 +0000)]
Document M-o command. Add section describing new sort commands.
Chris Hanson [Mon, 26 Nov 2001 19:14:50 +0000 (19:14 +0000)]
Document M-o command. Add section describing new sort commands.
Chris Hanson [Mon, 26 Nov 2001 19:11:18 +0000 (19:11 +0000)]
Tweak merge sort to be stable.
Chris Hanson [Mon, 26 Nov 2001 18:16:01 +0000 (18:16 +0000)]
Write first draft of XML section.
Chris Hanson [Wed, 21 Nov 2001 02:01:02 +0000 (02:01 +0000)]
Write first draft of Unicode section.
Chris Hanson [Wed, 21 Nov 2001 01:27:52 +0000 (01:27 +0000)]
Change WELL-FORMED-CODE-POINTS-LIST? to require that the argument be a
proper list.
Chris Hanson [Tue, 20 Nov 2001 22:27:55 +0000 (22:27 +0000)]
Write first draft of parser-macro section.
Chris Hanson [Tue, 20 Nov 2001 21:48:04 +0000 (21:48 +0000)]
Write first drafter of *PARSER section.
Chris Hanson [Tue, 20 Nov 2001 19:38:00 +0000 (19:38 +0000)]
Eliminate the "+" notation for MIT Scheme extensions. This is
ridiculous; virtually the entire manual is an extension.
First partial draft of parser-language section. This covers the
introduction and the subsection on *MATCHER.
Chris Hanson [Tue, 20 Nov 2001 19:37:44 +0000 (19:37 +0000)]
Eliminate the "+" notation for MIT Scheme extensions. This is
ridiculous; virtually the entire manual is an extension.
First partial draft of parser-language section. This covers the
introduction and the subsection on *MATCHER.
Chris Hanson [Tue, 20 Nov 2001 04:13:00 +0000 (04:13 +0000)]
Optimizer wasn't deleting unused procedure-valued bindings if the
procedure had side-effects. The bug fix to make top-level failure
continuations do backtracking prevented them from being substituted
properly; the substitution predicate was extended to allow this.
Also, some valuable substitutions weren't being seen because the
optimizers were being run in a fixed order. After the peephole
optimization is done, it reveals more possibilities for substitution.
So now the optimizers are re-run until nothing more can be done.
Chris Hanson [Tue, 20 Nov 2001 04:07:08 +0000 (04:07 +0000)]
Top-level failure continuations must do backtracking.
Chris Hanson [Mon, 19 Nov 2001 20:19:48 +0000 (20:19 +0000)]
Change imap-url-mailbox to always be a string. The root "mailbox" is
"", and the root container is "/". Both of these are handled
specially when converting the URL to a string.
This fixes the bug that allowed the malformed container URL
"imap://localhost//".
Chris Hanson [Sun, 18 Nov 2001 04:58:19 +0000 (04:58 +0000)]
Change file naming for cache files, so that it satisfies more
stringent Windows requirements. Make sure that directory structure
exists before locking a folder.
Chris Hanson [Sun, 18 Nov 2001 04:53:04 +0000 (04:53 +0000)]
Change file naming for cache files, so that it satisfies more
stringent Windows requirements. Make sure that directory structure
exists before locking a folder.
Chris Hanson [Sat, 17 Nov 2001 06:01:20 +0000 (06:01 +0000)]
Fix missing "Unicode" reference.
Chris Hanson [Sat, 17 Nov 2001 05:54:37 +0000 (05:54 +0000)]
Write documentation for parser-buffer abstraction.
Chris Hanson [Fri, 16 Nov 2001 21:15:11 +0000 (21:15 +0000)]
Document the REXP abstraction.
Chris Hanson [Fri, 16 Nov 2001 21:05:07 +0000 (21:05 +0000)]
Document the REXP abstraction.
Chris Hanson [Fri, 16 Nov 2001 21:02:36 +0000 (21:02 +0000)]
Document the REXP abstraction.
Chris Hanson [Fri, 16 Nov 2001 20:04:02 +0000 (20:04 +0000)]
Change ASCII to ISO-8859-1 where needed. Document FLO:FINITE?.
Update edition/version/date in header.
Chris Hanson [Thu, 15 Nov 2001 05:26:26 +0000 (05:26 +0000)]
Fix bug: imported bindings in package extensions weren't being
constructed.
Chris Hanson [Wed, 14 Nov 2001 21:11:13 +0000 (21:11 +0000)]
Update version number for 7.6.0 release.
Chris Hanson [Wed, 14 Nov 2001 20:53:32 +0000 (20:53 +0000)]
Fix some problems in the pointer optimization: pointers were being
incorrect elided across lambda expressions, and external pointer
bindings were being elided. The latter is fixed by introducing a
mechanism to distinguish internal identifiers, which eliminates the
need for the WITH-POINTER kludge.
Chris Hanson [Wed, 14 Nov 2001 20:19:13 +0000 (20:19 +0000)]
Fix some problems in the pointer optimization: pointers were being
incorrect elided across lambda expressions, and external pointer
bindings were being elided. The latter is fixed by introducing a
mechanism to distinguish internal identifiers, which eliminates the
need for the WITH-POINTER kludge.
Chris Hanson [Wed, 14 Nov 2001 18:27:17 +0000 (18:27 +0000)]
Change naming of peephole optimizer. Fold all optimization into
GENERATE-EXTERNAL-PROCEDURE.
Chris Hanson [Wed, 14 Nov 2001 18:15:31 +0000 (18:15 +0000)]
Change naming of peephole optimizer. Fold all optimization into
GENERATE-EXTERNAL-PROCEDURE.
Chris Hanson [Wed, 14 Nov 2001 18:03:32 +0000 (18:03 +0000)]
Add optimizer to elide unnecessary buffer-pointer assignments.
Chris Hanson [Wed, 14 Nov 2001 05:53:37 +0000 (05:53 +0000)]
Update for name changes in runtime system:
list-transform-positive => keep-matching-items
list-transform-negative => delete-matching-items
list-search-positive => find-matching-item
Chris Hanson [Sun, 11 Nov 2001 06:06:10 +0000 (06:06 +0000)]
Runtime support for *PARSER now integrated into the runtime system.
Chris Hanson [Sun, 11 Nov 2001 06:02:52 +0000 (06:02 +0000)]
Move unicode support into runtime system.
Chris Hanson [Sun, 11 Nov 2001 05:56:08 +0000 (05:56 +0000)]
Fix typo.
Chris Hanson [Sun, 11 Nov 2001 05:52:30 +0000 (05:52 +0000)]
Move parser-buffer abstraction into runtime system.
Chris Hanson [Sun, 11 Nov 2001 05:45:57 +0000 (05:45 +0000)]
Reorganize code for presentation style -- no change in function. Add
comments explaining how new optimizer works. Split up some large
procedures into smaller focused pieces. Reorder code to improve
readability.
Chris Hanson [Sat, 10 Nov 2001 06:31:47 +0000 (06:31 +0000)]
Add comment explaining the WITH-POINTER kludge.
Chris Hanson [Fri, 9 Nov 2001 21:38:47 +0000 (21:38 +0000)]
Implement substitution optimizer, which does a kind of data-flow
analysis to eliminate unnecessary lambda expressions.
Chris Hanson [Fri, 9 Nov 2001 21:37:55 +0000 (21:37 +0000)]
Implement substitution optimizer, which does a kind of data-flow
analysis to eliminate unnecessary lambda expressions.
Chris Hanson [Fri, 9 Nov 2001 21:37:10 +0000 (21:37 +0000)]
Need SOS loaded for proper compilation.
Chris Hanson [Tue, 6 Nov 2001 05:01:50 +0000 (05:01 +0000)]
Add locking mechanism for the IMAP folder cache. There is one lock
per folder, and the lock is held only while the folder cache is being
read and/or written. IMAIL will try three times to obtain the lock,
waiting one second between retries; thereafter it ignores the cache
until the lock becomes available.
Chris Hanson [Tue, 6 Nov 2001 04:48:23 +0000 (04:48 +0000)]
Add locking mechanism for the IMAP folder cache. There is one lock
per folder, and the lock is held only while the folder cache is being
read and/or written. IMAIL will try three times to obtain the lock,
waiting one second between retries; thereafter it ignores the cache
until the lock becomes available.
Chris Hanson [Mon, 5 Nov 2001 21:32:44 +0000 (21:32 +0000)]
Make sure *PARSER is loaded for IMAIL. It's not necessary to load it
just for the URL file.
Chris Hanson [Mon, 5 Nov 2001 21:24:54 +0000 (21:24 +0000)]
Move URL support back to IMAIL from the runtime system.
Chris Hanson [Mon, 5 Nov 2001 21:19:37 +0000 (21:19 +0000)]
Move URL support back to IMAIL from the runtime system.
Chris Hanson [Mon, 5 Nov 2001 21:05:56 +0000 (21:05 +0000)]
Move this back to IMAIL from the runtime system. Unlike anything else
in the runtime system, it requires *PARSER to compile, and I'm not
ready to add that dependency.
Chris Hanson [Mon, 5 Nov 2001 20:19:05 +0000 (20:19 +0000)]
Add missing option dependencies.
Chris Hanson [Mon, 5 Nov 2001 19:46:24 +0000 (19:46 +0000)]
Many changes to closure analysis require incrementing version number.
Chris Hanson [Mon, 5 Nov 2001 18:57:11 +0000 (18:57 +0000)]
Add long explanation of the analysis.
Chris Hanson [Mon, 5 Nov 2001 18:13:12 +0000 (18:13 +0000)]
Stylistic changes.
Chris Hanson [Mon, 5 Nov 2001 18:12:13 +0000 (18:12 +0000)]
Three fixes that together resolve the problem of compiling the XML
parser. (1) FOR-EACH-CALLEE! claimed to examine all of the callees,
but it wasn't looking at procedures called from descendant blocks that
had been disowned. (2) When removing dependent constraints, due to
closure, constraints that had indirect dependencies on the now-closed
procedure weren't being removed. (3) When adding undrifting
constraints due to closure contagion, it's wrong to constrain the
invocation block of a trivial closure.
Chris Hanson [Sat, 3 Nov 2001 05:16:48 +0000 (05:16 +0000)]
Use new names for LIST-TRANSFORM- procedures; eliminate private
definition for LIST-TRANSFORM-NEGATIVE!. Open up definition of
FOR-EACH-CALLEE! so that it can be experimented with. Change
implementation of undrifting conditions so that they can have multiple
dependencies.
Chris Hanson [Fri, 2 Nov 2001 17:10:33 +0000 (17:10 +0000)]
Add indentation bindings for new names in runtime system.
Chris Hanson [Fri, 2 Nov 2001 17:09:51 +0000 (17:09 +0000)]
Fix bug: ENVIRONMENT-BOUND? wasn't examining ancestors of
compiled-code environment frames.
Chris Hanson [Fri, 2 Nov 2001 17:08:02 +0000 (17:08 +0000)]
Fix bug: ENVIRONMENT-BOUND? wasn't examining ancestors of
compiled-code environment frames.
Chris Hanson [Fri, 2 Nov 2001 14:57:50 +0000 (14:57 +0000)]
Rearrange code to separate out manipulation of constraints list.
Chris Hanson [Fri, 2 Nov 2001 04:59:12 +0000 (04:59 +0000)]
Add explicit CONDITION datatype to track the conditions that tag
undrifting constraints. This simplifies the code and clarifies what
is happening.
Also change PENDING-UNDRIFTING? to examine the conditions for validity
in the same way that UNDRIFT-PROCEDURES! does.
Chris Hanson [Fri, 2 Nov 2001 03:57:56 +0000 (03:57 +0000)]
Guarantee that empty constraint entries are entirely removed.
Chris Hanson [Fri, 2 Nov 2001 03:28:09 +0000 (03:28 +0000)]
Change names:
list-transform-positive => keep-matching-items
list-transform-negative => delete-matching-items
list-search-positive => find-matching-item
Implement new procedures:
keep-matching-items!
delete-matching-items!
Chris Hanson [Thu, 1 Nov 2001 21:29:00 +0000 (21:29 +0000)]
Add hooks to generate debugging info about constraints.
Chris Hanson [Thu, 1 Nov 2001 18:42:59 +0000 (18:42 +0000)]
Use RVALUE/TRUE-PROCEDURE? where appropriate.