mit-scheme.git
32 years agoMake FORWARD-TOPIC and FORWARD-UP-TOPIC move to the first topic marker
Arthur Gleckler [Tue, 9 Feb 1993 03:35:32 +0000 (03:35 +0000)]
Make FORWARD-TOPIC and FORWARD-UP-TOPIC move to the first topic marker
if the point starts before the first topic marker.  Previously, they
had no effect in that case.

32 years agoCompletely new generator, interface is upwards compatible with
Chris Hanson [Tue, 9 Feb 1993 00:25:45 +0000 (00:25 +0000)]
Completely new generator, interface is upwards compatible with
previous design.  RANDOM accepts any real number as a modulus
argument.  MAKE-RANDOM-STATE additionally accepts an exact integer,
which it uses as a seed to create the state, thus providing a simple
means of producing a specific random state.

32 years agoBug in last edit.
Guillermo J. Rozas [Sat, 6 Feb 1993 06:03:53 +0000 (06:03 +0000)]
Bug in last edit.

32 years agoMake it work under Utah BSD 4.3
Guillermo J. Rozas [Sat, 6 Feb 1993 05:46:32 +0000 (05:46 +0000)]
Make it work under Utah BSD 4.3

32 years agoEta convert fclose to make it work with incompatible system-dependent
Guillermo J. Rozas [Sat, 6 Feb 1993 05:43:53 +0000 (05:43 +0000)]
Eta convert fclose to make it work with incompatible system-dependent
declarations.

32 years agoMake it work under BSD.
Guillermo J. Rozas [Sat, 6 Feb 1993 05:36:04 +0000 (05:36 +0000)]
Make it work under BSD.

32 years agoFix bad conditionalization for HP hardware. The definitions are
Guillermo J. Rozas [Sat, 6 Feb 1993 05:33:20 +0000 (05:33 +0000)]
Fix bad conditionalization for HP hardware.  The definitions are
hardware dependent, not OS dependent.

32 years agoAdd support for BSD, with no uname call to find model, and with
Guillermo J. Rozas [Sat, 6 Feb 1993 05:31:18 +0000 (05:31 +0000)]
Add support for BSD, with no uname call to find model, and with
heaps potentially non-executable.

32 years agoAvoid duplicate include of setjmp.h
Guillermo J. Rozas [Sat, 6 Feb 1993 05:28:52 +0000 (05:28 +0000)]
Avoid duplicate include of setjmp.h

32 years agoEta convert read and write to avoid conflicting system-dependent
Guillermo J. Rozas [Sat, 6 Feb 1993 05:27:26 +0000 (05:27 +0000)]
Eta convert read and write to avoid conflicting system-dependent
declarations.

32 years agoSwapped order of arguments to x_default_color, was preferring "Emacs"
Nick Papadakis [Tue, 2 Feb 1993 22:14:51 +0000 (22:14 +0000)]
Swapped order of arguments to x_default_color, was preferring "Emacs"
resources over "edwin" resources.

32 years agoFix bug by which RTL INVOCATION:PRIMITIVEs had the wrong frame size
Jason Wilson [Tue, 2 Feb 1993 06:02:46 +0000 (06:02 +0000)]
Fix bug by which RTL INVOCATION:PRIMITIVEs had the wrong frame size
for combinations with partial open codings in tail-recursive position.

32 years agoAdd a pseudo-suspend to DOS that invokes a subshell.
Guillermo J. Rozas [Tue, 2 Feb 1993 04:38:46 +0000 (04:38 +0000)]
Add a pseudo-suspend to DOS that invokes a subshell.

32 years agoAdd a pseudo-suspend that invokes a subshell.
Guillermo J. Rozas [Tue, 2 Feb 1993 04:33:20 +0000 (04:33 +0000)]
Add a pseudo-suspend that invokes a subshell.

32 years agoSignal an error for (/ 1/2 0).
Chris Hanson [Mon, 1 Feb 1993 01:31:05 +0000 (01:31 +0000)]
Signal an error for (/ 1/2 0).

32 years agoProcedure that tests to see if window needs redisplay must first call
Chris Hanson [Fri, 29 Jan 1993 23:05:40 +0000 (23:05 +0000)]
Procedure that tests to see if window needs redisplay must first call
%NOTICE-WINDOW-CHANGES.  A reply of #T permits the use of direct
output, which is wrong if there are buffer changes that haven't yet
been written to the screen.

32 years agoSimplify FILE-CASE clauses -- otherwise CREF generates *two* entries
Chris Hanson [Fri, 29 Jan 1993 16:42:08 +0000 (16:42 +0000)]
Simplify FILE-CASE clauses -- otherwise CREF generates *two* entries
for every binding in each duplicated file.

32 years agoFix bug that caused THREAD-TIMER-RUNNING? to be true when the timer
Chris Hanson [Fri, 29 Jan 1993 16:31:20 +0000 (16:31 +0000)]
Fix bug that caused THREAD-TIMER-RUNNING? to be true when the timer
was not running.  Redesign code that toggles the timer on and off to
make it simpler (and less likely to fail).

32 years agoHandle xscheme-control-g-disabled-p correctly from non-interaction
Guillermo J. Rozas [Fri, 29 Jan 1993 12:54:51 +0000 (12:54 +0000)]
Handle xscheme-control-g-disabled-p correctly from non-interaction
buffers.

32 years agoAdd (runtime pathname nt)
Stephen Adams [Fri, 29 Jan 1993 00:11:17 +0000 (00:11 +0000)]
Add (runtime pathname nt)

32 years agoChange MS-NT to NT.
Stephen Adams [Fri, 29 Jan 1993 00:07:22 +0000 (00:07 +0000)]
Change MS-NT to NT.

32 years agoAdd dummy variants for Windows NT.
Stephen Adams [Thu, 28 Jan 1993 23:21:21 +0000 (23:21 +0000)]
Add dummy variants for Windows NT.

32 years agoAdd record types.
Guillermo J. Rozas [Wed, 27 Jan 1993 19:27:11 +0000 (19:27 +0000)]
Add record types.

32 years agoI finished up the new tag stuff. Now you can include other tags files
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.

32 years agoUse the right package this time ... arrgh.
Nick Papadakis [Mon, 25 Jan 1993 00:45:45 +0000 (00:45 +0000)]
Use the right package this time ... arrgh.

32 years agoJust get-time, not unix/get-time
Nick Papadakis [Sun, 24 Jan 1993 23:26:50 +0000 (23:26 +0000)]
Just get-time, not unix/get-time

32 years agoUNDO-DONE! shouldn't enable undo if it is disabled.
Chris Hanson [Sun, 24 Jan 1993 07:06:43 +0000 (07:06 +0000)]
UNDO-DONE! shouldn't enable undo if it is disabled.

32 years agoupdated floppy.scm to conform to the change made by Bill
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.

32 years agoRedesign interaction between line-end translation and changes/undo
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.

32 years agoAdded conditionalization for REAL_IS_DEFINED_DOUBLE in array.h
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.

32 years agoI added the ability to use more than one TAGS file at one time using
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.

32 years agoFix fencepost error in code that places zero byte at end of string.
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.

32 years agoSET-STRING-MAXIMUM-LENGTH! was locking interrupts with
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.

32 years agoChange DYNAMIC-WIND (and FLUID-LET) so that they record the state
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.

32 years agoFix typo in PROMPT-FOR-CONFIRMATION operation on REPL mode console
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.

32 years agoAlways grow string by fixed ratio to guarantee constant amortized cost
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.

32 years agoFix bug: write-substring was not growing the accumulator enough when
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.

32 years agoDon't call APPLY with a list that could potentially be huge. Instead
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.

32 years agoWhen printing error messages, put some large limits on the output to
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.

32 years agoDon't lose completely when second arg to APPLY is too long to fit in
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.

32 years agoMust run %NOTICE-WINDOW-CHANGES! when doing direct update so that any
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.

32 years ago(DIRECTORY-PATHNAME-AS-FILE "/") can't represent its result properly,
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.

32 years agoInstall new version of RANDOM from slib1c4.
Chris Hanson [Wed, 13 Jan 1993 08:48:49 +0000 (08:48 +0000)]
Install new version of RANDOM from slib1c4.

32 years agoImplement calls to SET-INTERRUPT-ENABLES! by jumping to
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.

32 years agoFix print-graphics to work with all windows
Gerald Jay Sussman [Tue, 12 Jan 1993 23:31:46 +0000 (23:31 +0000)]
Fix print-graphics to work with all windows

32 years agoAdd support for handling end-of-file ^Z under DOS.
Guillermo J. Rozas [Tue, 12 Jan 1993 23:12:24 +0000 (23:12 +0000)]
Add support for handling end-of-file ^Z under DOS.

32 years agoFix boundary error involving changes indexes in buffer and narrowing.
Brian A. LaMacchia [Tue, 12 Jan 1993 22:06:34 +0000 (22:06 +0000)]
Fix boundary error involving changes indexes in buffer and narrowing.

32 years agoDefine new procedure X-GRAPHICS/WINDOW-ID, which returns the resource
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.

32 years agoAdd new primitive X-WINDOW-ID.
Chris Hanson [Tue, 12 Jan 1993 21:41:22 +0000 (21:41 +0000)]
Add new primitive X-WINDOW-ID.

32 years agoFix bugs in consistent assignment of coordinate limits.
Gerald Jay Sussman [Tue, 12 Jan 1993 21:30:52 +0000 (21:30 +0000)]
Fix bugs in consistent assignment of coordinate limits.

32 years agoFix spelling error that has been corrected in Edwin.
Chris Hanson [Tue, 12 Jan 1993 21:13:22 +0000 (21:13 +0000)]
Fix spelling error that has been corrected in Edwin.

32 years agoInitial revision
Guillermo J. Rozas [Tue, 12 Jan 1993 20:47:07 +0000 (20:47 +0000)]
Initial revision

32 years agoRedo time primitives to provide conversion between decoded and encoded
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.

32 years agoAdd syscall_mktime.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:50:08 +0000 (19:50 +0000)]
Add syscall_mktime.

32 years agoAdd CURRENT-FILE-TIME as an alias for ENCODED-TIME.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:49:25 +0000 (19:49 +0000)]
Add CURRENT-FILE-TIME as an alias for ENCODED-TIME.

32 years agoRemove current-file-time.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:47:26 +0000 (19:47 +0000)]
Remove current-file-time.

32 years agoImport get-time.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:06:35 +0000 (19:06 +0000)]
Import get-time.

32 years agoReplace unix/current-file-time with get-time.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:05:30 +0000 (19:05 +0000)]
Replace unix/current-file-time with get-time.

32 years agoRemove current-file-time, replaced by get-time.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:01:28 +0000 (19:01 +0000)]
Remove current-file-time, replaced by get-time.

32 years agoRemove current-file-time, not in use.
Guillermo J. Rozas [Tue, 12 Jan 1993 19:01:03 +0000 (19:01 +0000)]
Remove current-file-time, not in use.

32 years agoChange method by which a window recomputes its starting point. Old
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.

32 years agoFix two bugs in M-x recover-file.
Chris Hanson [Tue, 12 Jan 1993 10:45:46 +0000 (10:45 +0000)]
Fix two bugs in M-x recover-file.

32 years agoCalls to SET-INTERRUPT-ENABLES! primitive should be compiled as traps
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.

32 years agoDisable open-coding of SET-INTERRUPT-ENABLES! -- it can't work without
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.

32 years agoAdd assembly hook to implement SET-INTERRUPT-ENABLES! primitive.
Chris Hanson [Tue, 12 Jan 1993 10:43:22 +0000 (10:43 +0000)]
Add assembly hook to implement SET-INTERRUPT-ENABLES! primitive.

32 years agoNew code to grow and shrink buffers guarantees that the average time
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.

32 years agoChange GC undo truncation code to use buffer-local values of limit
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.

32 years agoFix typo.
Chris Hanson [Sun, 10 Jan 1993 10:47:06 +0000 (10:47 +0000)]
Fix typo.

32 years agoTyped characters are now grouped properly by undo regardless of their
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.

32 years agoClass and object data structures are now tagged as if by
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.

32 years agoAdd a SHRINK-LENGTH field to the group data structure, and change the
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.

32 years agoGAP-ALLOCATION-EXTRA no longer defined.
Chris Hanson [Sat, 9 Jan 1993 10:33:57 +0000 (10:33 +0000)]
GAP-ALLOCATION-EXTRA no longer defined.

32 years agoDefine a new condition type that is signalled when STRING-ALLOCATE is
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.

32 years agoFix several instances of SET-INTERRUPT-ENABLES! that appear in value
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.

32 years agoAdd a SHRINK-LENGTH field to the group data structure, and change the
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.

32 years agoThis version of Edwin requires microcode 11.125 or later. It should
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.

32 years agoRemove fossil?
Guillermo J. Rozas [Fri, 8 Jan 1993 23:34:45 +0000 (23:34 +0000)]
Remove fossil?

32 years agoAdd entries for "scmsig" and "everything".
Chris Hanson [Fri, 8 Jan 1993 04:54:36 +0000 (04:54 +0000)]
Add entries for "scmsig" and "everything".

32 years agoFixed bug in inline expander for OBJECT-TYPE?.
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.

32 years agoAdded new primitives: PRIMITIVE-GET-FREE, PRIMITIVE-INCREMENT-FREE,
Chris Hanson [Thu, 7 Jan 1993 23:53:55 +0000 (23:53 +0000)]
Added new primitives: PRIMITIVE-GET-FREE, PRIMITIVE-INCREMENT-FREE,
HEAP-AVAILABLE?.

32 years agoExport REPL history variables needed to make new histories and install
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.

32 years agoChange cc-vector structures to be of type vector so they can be
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.

32 years agoDon't allow the same name to be interned twice in the same block.
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.

32 years agoComplete redesign of environment model and declaration parser. This
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.

32 years agoAdd definition compression for the C back end.
Guillermo J. Rozas [Wed, 30 Dec 1992 16:35:14 +0000 (16:35 +0000)]
Add definition compression for the C back end.

32 years agoAdd scode/sequence?
Guillermo J. Rozas [Wed, 30 Dec 1992 16:32:12 +0000 (16:32 +0000)]
Add scode/sequence?

32 years agoChanges for the C back end.
Guillermo J. Rozas [Wed, 30 Dec 1992 14:13:45 +0000 (14:13 +0000)]
Changes for the C back end.

32 years agoAdd < and expt to the set of back-end-specific operations.
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.

32 years agoSome changes for the C back end.
Guillermo J. Rozas [Tue, 29 Dec 1992 20:57:10 +0000 (20:57 +0000)]
Some changes for the C back end.

32 years agoSome 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.

32 years agoChange implementation of INVOCATION:APPLY to use the new
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.

32 years agoTweak fixnum rules slightly so that previous implementation of logical
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.

32 years agoFix think-o in implementation of object-type inliner.
Chris Hanson [Mon, 28 Dec 1992 21:57:56 +0000 (21:57 +0000)]
Fix think-o in implementation of object-type inliner.

32 years agoFix bug in code that recognizes named structures. Don't integrate
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.

32 years agoInstall shortcircuit_apply support for MIPS.
Chris Hanson [Mon, 28 Dec 1992 21:54:43 +0000 (21:54 +0000)]
Install shortcircuit_apply support for MIPS.

32 years agoFix think-o from the past.
Chris Hanson [Wed, 23 Dec 1992 18:14:20 +0000 (18:14 +0000)]
Fix think-o from the past.

32 years agoChange ".binf" to ".bci".
Chris Hanson [Wed, 23 Dec 1992 13:42:11 +0000 (13:42 +0000)]
Change ".binf" to ".bci".

32 years agoFix typo in previous change.
Chris Hanson [Wed, 23 Dec 1992 13:36:44 +0000 (13:36 +0000)]
Fix typo in previous change.

32 years agoIntegrate structure predicates.
Chris Hanson [Tue, 22 Dec 1992 22:05:32 +0000 (22:05 +0000)]
Integrate structure predicates.

32 years agoDefine CALL-WITH-VALUES to be an alias for WITH-VALUES.
Chris Hanson [Tue, 22 Dec 1992 21:00:55 +0000 (21:00 +0000)]
Define CALL-WITH-VALUES to be an alias for WITH-VALUES.