Stephen Adams [Fri, 29 Jan 1993 00:07:22 +0000 (00:07 +0000)]
Change MS-NT to NT.
Stephen Adams [Thu, 28 Jan 1993 23:21:21 +0000 (23:21 +0000)]
Add dummy variants for Windows NT.
Guillermo J. Rozas [Wed, 27 Jan 1993 19:27:11 +0000 (19:27 +0000)]
Add record types.
Jason Wilson [Mon, 25 Jan 1993 18:03:55 +0000 (18:03 +0000)]
I finished up the new tag stuff. Now you can include other tags files
as in emacs 19. Also, you can optionally cause tags-search and
tags-query-replace to kill buffers that aren't modified.
Nick Papadakis [Mon, 25 Jan 1993 00:45:45 +0000 (00:45 +0000)]
Use the right package this time ... arrgh.
Nick Papadakis [Sun, 24 Jan 1993 23:26:50 +0000 (23:26 +0000)]
Just get-time, not unix/get-time
Chris Hanson [Sun, 24 Jan 1993 07:06:43 +0000 (07:06 +0000)]
UNDO-DONE! shouldn't enable undo if it is disabled.
Gerald Jay Sussman [Sun, 24 Jan 1993 03:47:34 +0000 (03:47 +0000)]
updated floppy.scm to conform to the change made by Bill
RCS file: /scheme/src/runtime/RCS/unxprm.scm,v
Working file: unxprm.scm
head: 1.23
branch:
locks: strict
access list:
symbolic names:
RELEASE_7_1_0: 1.9
RELEASE_7_0_0: 1.4
comment leader: ";;; "
keyword substitution: kv
total revisions: 23; selected revisions: 23
description:
----------------------------
revision 1.23
date: 1993/01/12 19:01:28; author: gjr; state: Exp; lines: +2 -5
Remove current-file-time, replaced by get-time.
Chris Hanson [Sat, 23 Jan 1993 06:55:45 +0000 (06:55 +0000)]
Redesign interaction between line-end translation and changes/undo
recording. New model suppresses changes and undo only for output
translations, since these translations will be undone before the
redisplay occurs. When inserting a file into the buffer, it does not
affect the change recording at all, since the translation won't exceed
the boundaries of the inserted text, and it's desirable to notice the
change of inserting the file in the usual way.
Nick Papadakis [Sat, 23 Jan 1993 00:08:05 +0000 (00:08 +0000)]
Added conditionalization for REAL_IS_DEFINED_DOUBLE in array.h
scmsig wants this set to 1, all other schemes (in particular, scm6003)
want this set to 0.
Jason Wilson [Wed, 20 Jan 1993 21:03:10 +0000 (21:03 +0000)]
I added the ability to use more than one TAGS file at one time using
the command visit-additional-tags-file. Still to be done is to handle
included TAGS files ala Emacs 19.
Chris Hanson [Wed, 20 Jan 1993 10:35:53 +0000 (10:35 +0000)]
Fix fencepost error in code that places zero byte at end of string.
Chris Hanson [Wed, 20 Jan 1993 10:06:09 +0000 (10:06 +0000)]
SET-STRING-MAXIMUM-LENGTH! was locking interrupts with
INTERRUPT-MASK/GC-OK. Needless to say, GC is *not* OK during this
operation.
Chris Hanson [Wed, 20 Jan 1993 06:59:51 +0000 (06:59 +0000)]
Change DYNAMIC-WIND (and FLUID-LET) so that they record the state
transition *after* the "before" thunk is executed. This guarantees
that both the "before" and "after" thunks execute in the dynamic state
outside of the DYNAMIC-WIND call.
**** NB: ****
The particular change I made is buggy: I only changed how the state
transition is performed in the normal case. If you throw out from the
"during" thunk and then throw back in, the "before" thunk will be
executed after its state transition is recorded. In order to fix this
properly, the state space structure must be extended to include
information indicating whether the transition should be recorded
before or after the transition thunk.
Chris Hanson [Wed, 20 Jan 1993 04:50:16 +0000 (04:50 +0000)]
Fix typo in PROMPT-FOR-CONFIRMATION operation on REPL mode console
port.
Chris Hanson [Tue, 19 Jan 1993 05:33:49 +0000 (05:33 +0000)]
Always grow string by fixed ratio to guarantee constant amortized cost
of insertion.
Guillermo J. Rozas [Mon, 18 Jan 1993 16:50:09 +0000 (16:50 +0000)]
Fix bug: write-substring was not growing the accumulator enough when
the substring was larger than the size of the accumulator.
Chris Hanson [Mon, 18 Jan 1993 05:38:49 +0000 (05:38 +0000)]
Don't call APPLY with a list that could potentially be huge. Instead
allocate a string buffer and fill it; grow buffer when necessary and
accept that there will be some memory waste.
Chris Hanson [Mon, 18 Jan 1993 05:21:57 +0000 (05:21 +0000)]
When printing error messages, put some large limits on the output to
prevent the error message from causing secondary lossage.
Chris Hanson [Mon, 18 Jan 1993 05:13:19 +0000 (05:13 +0000)]
Don't lose completely when second arg to APPLY is too long to fit in
stack.
Chris Hanson [Sat, 16 Jan 1993 05:15:30 +0000 (05:15 +0000)]
Must run %NOTICE-WINDOW-CHANGES! when doing direct update so that any
changes to the window are handled correctly.
Chris Hanson [Wed, 13 Jan 1993 09:53:15 +0000 (09:53 +0000)]
(DIRECTORY-PATHNAME-AS-FILE "/") can't represent its result properly,
because null strings aren't allowed as pathname names. So just return
the argument in this case and hope for the best.
Chris Hanson [Wed, 13 Jan 1993 08:48:49 +0000 (08:48 +0000)]
Install new version of RANDOM from slib1c4.
Chris Hanson [Wed, 13 Jan 1993 00:18:46 +0000 (00:18 +0000)]
Implement calls to SET-INTERRUPT-ENABLES! by jumping to
assembly-language hook in compiled code interface.
Gerald Jay Sussman [Tue, 12 Jan 1993 23:31:46 +0000 (23:31 +0000)]
Fix print-graphics to work with all windows
Guillermo J. Rozas [Tue, 12 Jan 1993 23:12:24 +0000 (23:12 +0000)]
Add support for handling end-of-file ^Z under DOS.
Brian A. LaMacchia [Tue, 12 Jan 1993 22:06:34 +0000 (22:06 +0000)]
Fix boundary error involving changes indexes in buffer and narrowing.
Chris Hanson [Tue, 12 Jan 1993 21:42:09 +0000 (21:42 +0000)]
Define new procedure X-GRAPHICS/WINDOW-ID, which returns the resource
ID of the X window.
Chris Hanson [Tue, 12 Jan 1993 21:41:22 +0000 (21:41 +0000)]
Add new primitive X-WINDOW-ID.
Gerald Jay Sussman [Tue, 12 Jan 1993 21:30:52 +0000 (21:30 +0000)]
Fix bugs in consistent assignment of coordinate limits.
Chris Hanson [Tue, 12 Jan 1993 21:13:22 +0000 (21:13 +0000)]
Fix spelling error that has been corrected in Edwin.
Guillermo J. Rozas [Tue, 12 Jan 1993 20:47:07 +0000 (20:47 +0000)]
Initial revision
Guillermo J. Rozas [Tue, 12 Jan 1993 19:52:14 +0000 (19:52 +0000)]
Redo time primitives to provide conversion between decoded and encoded
times.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:50:08 +0000 (19:50 +0000)]
Add syscall_mktime.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:49:25 +0000 (19:49 +0000)]
Add CURRENT-FILE-TIME as an alias for ENCODED-TIME.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:47:26 +0000 (19:47 +0000)]
Remove current-file-time.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:06:35 +0000 (19:06 +0000)]
Import get-time.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:05:30 +0000 (19:05 +0000)]
Replace unix/current-file-time with get-time.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:01:28 +0000 (19:01 +0000)]
Remove current-file-time, replaced by get-time.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:01:03 +0000 (19:01 +0000)]
Remove current-file-time, not in use.
Chris Hanson [Tue, 12 Jan 1993 10:50:41 +0000 (10:50 +0000)]
Change method by which a window recomputes its starting point. Old
method did too much work, particularly in cases where the line was
very long. New method searches backward -- exactly once -- to start
of first line that will appear in the window, and saves all of the
resulting information in the window for later use.
Unfortunately, there are many other problems with the algorithms that
make them dependent on line length, and it's a lot of work to fix
them. To fix it write will involve rewriting the display update code,
yet again, and I'm not in the mood for that right now. However, it
won't be necessary to rewrite the starting-point computation when that
does finally happen.
Chris Hanson [Tue, 12 Jan 1993 10:45:46 +0000 (10:45 +0000)]
Fix two bugs in M-x recover-file.
Chris Hanson [Tue, 12 Jan 1993 10:45:20 +0000 (10:45 +0000)]
Calls to SET-INTERRUPT-ENABLES! primitive should be compiled as traps
to the special assembly hook. This change requires microcode 11.126.
Chris Hanson [Tue, 12 Jan 1993 10:44:20 +0000 (10:44 +0000)]
Disable open-coding of SET-INTERRUPT-ENABLES! -- it can't work without
a good deal of hair, and in that case it's probably not desirable.
Chris Hanson [Tue, 12 Jan 1993 10:43:22 +0000 (10:43 +0000)]
Add assembly hook to implement SET-INTERRUPT-ENABLES! primitive.
Chris Hanson [Sun, 10 Jan 1993 10:54:43 +0000 (10:54 +0000)]
New code to grow and shrink buffers guarantees that the average time
of inserting or deleting each character is bounded by a constant. The
user is given some control over this behavior by means of the editor
variable BUFFER-REALLOCATION-FACTOR, which allows a space-time
tradeoff between the average insertion/deletion time and the average
load factor of the buffer. BUFFER-REALLOCATION-FACTOR may be given a
local value in a given buffer to change that buffer's allocation
without affecting other buffers.
Chris Hanson [Sun, 10 Jan 1993 10:48:22 +0000 (10:48 +0000)]
Change GC undo truncation code to use buffer-local values of limit
variables.
Chris Hanson [Sun, 10 Jan 1993 10:47:06 +0000 (10:47 +0000)]
Fix typo.
Chris Hanson [Sun, 10 Jan 1993 10:46:38 +0000 (10:46 +0000)]
Typed characters are now grouped properly by undo regardless of their
position on the line.
Chris Hanson [Sun, 10 Jan 1993 10:43:16 +0000 (10:43 +0000)]
Class and object data structures are now tagged as if by
DEFINE-STRUCTURE.
Chris Hanson [Sat, 9 Jan 1993 20:38:24 +0000 (20:38 +0000)]
Add a SHRINK-LENGTH field to the group data structure, and change the
allocation of groups to initialize them to a fixed minimum size.
Chris Hanson [Sat, 9 Jan 1993 10:33:57 +0000 (10:33 +0000)]
GAP-ALLOCATION-EXTRA no longer defined.
Chris Hanson [Sat, 9 Jan 1993 09:46:54 +0000 (09:46 +0000)]
Define a new condition type that is signalled when STRING-ALLOCATE is
unable to allocate the string due to a lack of memory. Set up a
condition handler for this type in the file-reading code so that the
error message tells the user that the file is too big to fit in
memory.
Chris Hanson [Sat, 9 Jan 1993 09:44:40 +0000 (09:44 +0000)]
Fix several instances of SET-INTERRUPT-ENABLES! that appear in value
position but are intended to be for effect.
Chris Hanson [Sat, 9 Jan 1993 09:41:30 +0000 (09:41 +0000)]
Add a SHRINK-LENGTH field to the group data structure, and change the
allocation of groups to initialize them to a fixed minimum size.
Chris Hanson [Sat, 9 Jan 1993 01:16:25 +0000 (01:16 +0000)]
This version of Edwin requires microcode 11.125 or later. It should
be compiled with compiler version 4.97 or later, because its
performance depends on several new compiler optimizations.
* Major redesign of low-level insert and delete operations, the
primary aim of which is to greatly improve performance:
* Insert, delete, and move-point daemons flushed.
* Limits that track the extent of the changes to a buffer between
display updates are now per-buffer rather than per-window. The
windows are notified of these changes at display update rather
than while the changes are occurring.
* Calls to the primitives STRING-ALLOCATE, SUBSTRING-MOVE-RIGHT!,
and SUBSTRING-MOVE-LEFT! have been replaced with calls to Scheme
procedures that perform the same functions. These new procedures
avoid the cost of calling C code, which can be very high. The
latter two procedures use heuristics to decide whether it is
better to call the C primitive or to do the operation in line.
* The undo subsystem has been reimplemented. The new implementation
is a near-exact translation of the new undo code from Emacs 18.56.
The major features of this implementation are: unlimited undo memory
for one undo step; significantly better performance; and much
clearer implementation, reducing probability of bugs (the previous
implementation is known to be buggy).
* The new implementation of STRING-ALLOCATE fixes the bug that caused
the editor to go into an infinite loop when reading in a file that
was too large to fit in memory.
* The MOVE-TO-COLUMN procedure had a problem because it was searching
for the end of line in order to pass it as a limit argument to
GROUP-COLUMN->INDEX. In some cases, particularly paragraph fill,
this changed a linear algorithm to quadratic. This has been fixed
by changing GROUP-COLUMN->INDEX to stop at end of line even if that
is not the given limit.
* The DEFINE-NAMED-STRUCTURE macro has been changed to create an
object like those created by DEFINE-STRUCTURE, so that the printer
and pretty-printer will treat them in the usual way.
* The LINE-START and LINE-END procedures have been rewritten to make
them faster. These procedures are used in many places in the editor
and must be fast. The associated MOVE-VERTICALLY has been
eliminated as it's no longer used.
* TRANSPOSE-THINGS has been rewritten so that it doesn't leave
permanent marks attached to the buffer.
* HORIZONTAL-SPACE-START and HORIZONTAL-SPACE-END no longer look for
the nearest line limit, since that was completely unnecessary. The
procedures that they call automatically stop at the line edge.
* BOCHSER code, which was not being loaded, is now also not compiled
since it depended on the move-point daemons.
Guillermo J. Rozas [Fri, 8 Jan 1993 23:34:45 +0000 (23:34 +0000)]
Remove fossil?
Chris Hanson [Fri, 8 Jan 1993 04:54:36 +0000 (04:54 +0000)]
Add entries for "scmsig" and "everything".
Chris Hanson [Fri, 8 Jan 1993 00:05:44 +0000 (00:05 +0000)]
Fixed bug in inline expander for OBJECT-TYPE?.
Added inline expanders for primitives: GET-INTERRUPT-ENABLES,
SET-INTERRUPT-ENABLES!, PRIMITIVE-GET-FREE, PRIMITIVE-INCREMENT-FREE,
HEAP-AVAILABLE?, and SET-STRING-LENGTH!. Some of these primitives are
new with microcode version 11.125.
For the MIPS, added support for open-coding of FIXNUM-LSH.
Chris Hanson [Thu, 7 Jan 1993 23:53:55 +0000 (23:53 +0000)]
Added new primitives: PRIMITIVE-GET-FREE, PRIMITIVE-INCREMENT-FREE,
HEAP-AVAILABLE?.
Chris Hanson [Thu, 7 Jan 1993 21:00:23 +0000 (21:00 +0000)]
Export REPL history variables needed to make new histories and install
them in an active REPL.
Guillermo J. Rozas [Tue, 5 Jan 1993 15:57:36 +0000 (15:57 +0000)]
Change cc-vector structures to be of type vector so they can be
dumped.
Chris Hanson [Mon, 4 Jan 1993 07:42:38 +0000 (07:42 +0000)]
Don't allow the same name to be interned twice in the same block.
Chris Hanson [Sat, 2 Jan 1993 07:33:39 +0000 (07:33 +0000)]
Complete redesign of environment model and declaration parser. This
was prompted by a bug that had been present since the original design;
the bug was inherent in the design, hence the need for a redesign.
The new design has the following features:
* The old design used a two-level environment model for the top-level
environment, in which imported and global bindings were
distinguished from top-level bindings appearing in the file. The
new design uses a single top-level environment for all bindings.
This is the change fixed the bug, but introduced performance
problems because the two-level design had a special hack for the
global environment; the performance problems were fixed by:
* The new design uses a hash table to hold the bindings in (the model
of) an environment frame when the number of bindings exceeds a
preset threshold. This allows very large environment frames to have
reasonable access times, while avoiding the time and space overhead
of the hash table for small environment frames; typically only a few
frames will use the hash table mechanism. The hash table uses open
addressing with double hashing.
* Because ".ext" files are internal data structures that are written
to a file, old ".ext" files are incompatible with the new scode
optimizer. In order to prevent lossage, ".ext" files have a new
format, which contains a version number. When the scode optimizer
encounters an old ".ext" file, or a new one with the wrong version
number, it will emit a warning and ignore it.
* Code that supported special "error combinations" has been removed,
since these are no longer used.
* Code that generated ".unf" files has been removed. Since several
procedures with semi-public interfaces accept arguments or return
values relating to these files, the procedures ignore such arguments
and return dummy values. The global variable SFU? has been
eliminated.
Guillermo J. Rozas [Wed, 30 Dec 1992 16:35:14 +0000 (16:35 +0000)]
Add definition compression for the C back end.
Guillermo J. Rozas [Wed, 30 Dec 1992 16:32:12 +0000 (16:32 +0000)]
Add scode/sequence?
Guillermo J. Rozas [Wed, 30 Dec 1992 14:13:45 +0000 (14:13 +0000)]
Changes for the C back end.
Guillermo J. Rozas [Wed, 30 Dec 1992 12:59:29 +0000 (12:59 +0000)]
Add < and expt to the set of back-end-specific operations.
Guillermo J. Rozas [Tue, 29 Dec 1992 20:57:10 +0000 (20:57 +0000)]
Some changes for the C back end.
Guillermo J. Rozas [Tue, 29 Dec 1992 19:51:57 +0000 (19:51 +0000)]
Some changes for the C back end.
Chris Hanson [Mon, 28 Dec 1992 22:03:26 +0000 (22:03 +0000)]
Change implementation of INVOCATION:APPLY to use the new
shortcircuit_apply code in the microcode interface. This change
requires version 11.124 of the microcode.
Chris Hanson [Mon, 28 Dec 1992 22:01:22 +0000 (22:01 +0000)]
Tweak fixnum rules slightly so that previous implementation of logical
fixnum operations will work correctly.
Chris Hanson [Mon, 28 Dec 1992 21:57:56 +0000 (21:57 +0000)]
Fix think-o in implementation of object-type inliner.
Chris Hanson [Mon, 28 Dec 1992 21:56:38 +0000 (21:56 +0000)]
Fix bug in code that recognizes named structures. Don't integrate
predicates, since compiler is unable to take advantage of this
integration in the situations that need it.
Chris Hanson [Mon, 28 Dec 1992 21:54:43 +0000 (21:54 +0000)]
Install shortcircuit_apply support for MIPS.
Chris Hanson [Wed, 23 Dec 1992 18:14:20 +0000 (18:14 +0000)]
Fix think-o from the past.
Chris Hanson [Wed, 23 Dec 1992 13:42:11 +0000 (13:42 +0000)]
Change ".binf" to ".bci".
Chris Hanson [Wed, 23 Dec 1992 13:36:44 +0000 (13:36 +0000)]
Fix typo in previous change.
Chris Hanson [Tue, 22 Dec 1992 22:05:32 +0000 (22:05 +0000)]
Integrate structure predicates.
Chris Hanson [Tue, 22 Dec 1992 21:00:55 +0000 (21:00 +0000)]
Define CALL-WITH-VALUES to be an alias for WITH-VALUES.
Chris Hanson [Tue, 22 Dec 1992 02:20:45 +0000 (02:20 +0000)]
Add open-coding for FIXNUM-NOT, FIXNUM-AND, FIXNUM-ANDC, FIXNUM-OR,
and FIXNUM-XOR.
Chris Hanson [Thu, 17 Dec 1992 00:05:34 +0000 (00:05 +0000)]
Change reference from UNPARSER-METHOD? to PROCEDURE? so that cold-load
will work with interpreted code. The error test this implements isn't
very important anyway.
Guillermo J. Rozas [Wed, 16 Dec 1992 12:24:01 +0000 (12:24 +0000)]
Fix bug. Dependents are not nodes, but targets.
Guillermo J. Rozas [Wed, 16 Dec 1992 12:12:18 +0000 (12:12 +0000)]
Fix bug in last edit.
Guillermo J. Rozas [Wed, 16 Dec 1992 09:20:06 +0000 (09:20 +0000)]
Improve the open coder for OBJECT-TYPE?
Guillermo J. Rozas [Wed, 16 Dec 1992 09:18:30 +0000 (09:18 +0000)]
Generalize an identity from value-class=datum to
value-class=immediate.
Guillermo J. Rozas [Wed, 16 Dec 1992 07:32:20 +0000 (07:32 +0000)]
Bug in object-type open coding!
Chris Hanson [Tue, 15 Dec 1992 20:37:46 +0000 (20:37 +0000)]
Turn off stack-overflow interrupt in both WITHIN-CONTINUATION and
CALL-WITH-CURRENT-CONTINUATION, since they eliminate the condition.
Guillermo J. Rozas [Tue, 15 Dec 1992 19:54:38 +0000 (19:54 +0000)]
Add blank line to make comparing with DOS version easier.
Guillermo J. Rozas [Fri, 11 Dec 1992 21:43:41 +0000 (21:43 +0000)]
Fix bug in finding init file.
Teach the edwin filename parser about ~ on DOS.
Arthur Gleckler [Fri, 11 Dec 1992 04:21:56 +0000 (04:21 +0000)]
Set up (EDWIN DEBUGGER) package to handle my (older) version of the
debugger by linking some variables the new debugger doesn't need.
Chris Hanson [Thu, 10 Dec 1992 20:23:57 +0000 (20:23 +0000)]
Change primitives that set window colors to use the window's colormap
instead of the display's default colormap.
Chris Hanson [Thu, 10 Dec 1992 19:11:20 +0000 (19:11 +0000)]
Ignore BadWindow errors generated by XDestroyWindow.
Chris Hanson [Thu, 10 Dec 1992 01:34:17 +0000 (01:34 +0000)]
Change record support to understand that a record is applicable only
when its type is a record whose length field has been specially
marked.
Chris Hanson [Thu, 10 Dec 1992 01:25:52 +0000 (01:25 +0000)]
Change record support to understand that a record is applicable only
when its type is a record whose length field has been specially
marked.
Chris Hanson [Wed, 9 Dec 1992 23:38:37 +0000 (23:38 +0000)]
Further restrict application of records: the type that appears in the
record's zeroth slot must be a record whose length field is marked
with TC_TRUE. This allows a record to have another record be its type
without having to reserve the application-procedure slot in all
records.
Chris Hanson [Wed, 9 Dec 1992 23:29:40 +0000 (23:29 +0000)]
Add inline coding for OBJECT-TYPE, PRIMITIVE-OBJECT-TYPE, and
PRIMITIVE-OBJECT-SET-TYPE. Change coding for %RECORD-LENGTH to not
assume that record length has type code zero.
Chris Hanson [Tue, 8 Dec 1992 04:18:47 +0000 (04:18 +0000)]
DEFINE-STRUCTURE no longer allows NAMED to be used with an argument
unless TYPE is given.
Chris Hanson [Mon, 7 Dec 1992 22:15:13 +0000 (22:15 +0000)]
Initial revision
Chris Hanson [Mon, 7 Dec 1992 22:14:10 +0000 (22:14 +0000)]
Add scmsig to "everything" rule.