Stephen Adams [Mon, 22 Jul 1996 17:49:20 +0000 (17:49 +0000)]
Added LENGTH, and vector and string constructors.
Stephen Adams [Mon, 22 Jul 1996 17:47:18 +0000 (17:47 +0000)]
Improved the ascii byte store code (elide object->datum on store).
Stephen Adams [Mon, 22 Jul 1996 17:46:16 +0000 (17:46 +0000)]
Removed useless rule for flonum-subtract.
Stephen Adams [Mon, 22 Jul 1996 17:45:29 +0000 (17:45 +0000)]
Canonicalized (flonum-less? x 0.) to flonum-negative? etc.
Stephen Adams [Mon, 22 Jul 1996 16:24:01 +0000 (16:24 +0000)]
Added open-coder for %fixnum->flonum.
Stephen Adams [Mon, 22 Jul 1996 04:46:15 +0000 (04:46 +0000)]
*** empty log message ***
Stephen Adams [Mon, 22 Jul 1996 04:45:41 +0000 (04:45 +0000)]
Added (FLONUM-1-ARG FIXNUM->FLONUM ...) rules.
Stephen Adams [Sat, 20 Jul 1996 23:03:03 +0000 (23:03 +0000)]
Added constant-folding of %fixnum->flonum.
Stephen Adams [Sat, 20 Jul 1996 22:57:13 +0000 (22:57 +0000)]
Added %fixnum->flonum.
Stephen Adams [Sat, 20 Jul 1996 22:36:00 +0000 (22:36 +0000)]
Typo.
Stephen Adams [Sat, 20 Jul 1996 22:26:26 +0000 (22:26 +0000)]
Added FIXNUM->FLONUM.
Stephen Adams [Sat, 20 Jul 1996 18:30:14 +0000 (18:30 +0000)]
Added STRING relational operators.
Stephen Adams [Sat, 20 Jul 1996 18:08:46 +0000 (18:08 +0000)]
Added switch compiler:rtl-instruction-scheduling?
Stephen Adams [Sat, 20 Jul 1996 17:59:37 +0000 (17:59 +0000)]
Fixed type checked indexed operators to not generate a type check for
indexes that are known to be fixnums.
Stephen Adams [Fri, 19 Jul 1996 23:53:58 +0000 (23:53 +0000)]
Fixed bug in PROCEDURE-TYPE.
Added TYPE:->CONSTANT.
Stephen Adams [Fri, 19 Jul 1996 23:32:03 +0000 (23:32 +0000)]
Added rewrite code to replace an expression with a literal if the type
system tells us what the value must be. Most useful for
IF-predicates, as replacing <pred> by, e.g., (BEGIN <pred> '#T) allows
the dead code to be removed.
Added predicate code to yield a #T or #F value. Previously the
predicate information was being used only in the branches of an if.
Obviously, it is nice to know when the predicate is always true or
false.
Tweaked with inference rules for EQ?/EQV?/EQUAL?. This could be
better, for example, if (eq? x y) then we know the types must be in
the intersection. This would require work in TYPEREW/PRED.
Stephen Adams [Fri, 19 Jul 1996 18:27:18 +0000 (18:27 +0000)]
Added an arity check so that primitives with rewrite rules but used
with teh wrong arity are silently ignored. The applicat phase will
give a warning.
Added rewrites for most int: primitives to produce fixnum diamonds, or
to use the generic operations (for comparisons).
Stephen Adams [Fri, 19 Jul 1996 02:50:10 +0000 (02:50 +0000)]
Exported flag compiler:rtl-instruction-scheduling?
Stephen Adams [Fri, 19 Jul 1996 02:49:36 +0000 (02:49 +0000)]
SET-INTERRUPT-ENABLES! is now open-coded as a special primitive unless
'SET-INTERRUPT-ENABLES! is in compiler:primitives-with-no-open-coding.
Stephen Adams [Fri, 19 Jul 1996 02:28:32 +0000 (02:28 +0000)]
SET-INTERRUPT-ENABLES! is now open-coded as a special primitive unless
'SET-INTERRUPT-ENABLES! is in compiler:primitives-with-no-open-coding.
Stephen Adams [Fri, 19 Jul 1996 02:22:05 +0000 (02:22 +0000)]
Added set_interrupt_enables_hook
Stephen Adams [Wed, 17 Jul 1996 21:37:45 +0000 (21:37 +0000)]
Added rules for %/, which enables &/ -> flo:/
Stephen Adams [Wed, 17 Jul 1996 20:48:42 +0000 (20:48 +0000)]
Fixed bug in TYPEREW/EXPR*/UNORDERED/HARD where type information was
being lost because the list had been REVERSE!-ed.
Stephen Adams [Fri, 12 Jul 1996 20:20:56 +0000 (20:20 +0000)]
Added graphcis operations DRAW-ARC, DRAW-CIRCLE and FILL-CIRCLE.
Stephen Adams [Fri, 12 Jul 1996 20:12:15 +0000 (20:12 +0000)]
Fixed X-GRAPHICS-DRAW-ARC to do the right thing when the X and/or Y
axes are flipped.
Stephen Adams [Fri, 12 Jul 1996 18:51:05 +0000 (18:51 +0000)]
Added X-graphics documentation about DRAW-CIRCLE and FILL-CIRCLE.
Stephen Adams [Fri, 12 Jul 1996 18:03:45 +0000 (18:03 +0000)]
Added X-GRAPHICS/DRAW-ARC, X-GRAPHICS/DRAW-CIRCLE and X-GRAPHICS/FILL-CIRCLE.
Stephen Adams [Fri, 12 Jul 1996 17:52:28 +0000 (17:52 +0000)]
Added X-GRAPHICS-DRAW-ARC for drawing filled and unfilled arcs.
Chris Hanson [Tue, 2 Jul 1996 21:13:29 +0000 (21:13 +0000)]
Rewrite `poll' support to make it conditionalized more cleanly.
Chris Hanson [Tue, 2 Jul 1996 21:03:25 +0000 (21:03 +0000)]
Use POLLNORM in preference to POLLIN since the former is supported
more widely.
Chris Hanson [Tue, 2 Jul 1996 21:01:15 +0000 (21:01 +0000)]
Fix minor bug in handling of cursor during SCREEN-FORCE-UPDATE.
Chris Hanson [Mon, 1 Jul 1996 23:28:17 +0000 (23:28 +0000)]
If the `poll' system call is available, use it in preference to
`select'. This is needed for HP-UX 10.10 because `select' is broken
in that release.
Chris Hanson [Mon, 1 Jul 1996 23:27:18 +0000 (23:27 +0000)]
Add conditionalization to detect versions of HP-UX that supply the
`poll' system call.
Chris Hanson [Mon, 1 Jul 1996 23:25:27 +0000 (23:25 +0000)]
Add conditionalization to detect HP-UX version 10.10.
Chris Hanson [Sun, 16 Jun 1996 05:18:24 +0000 (05:18 +0000)]
Fix bug that caused RMAIL to signal an error when converting poorly
formed messages to RMAIL format.
Chris Hanson [Tue, 11 Jun 1996 04:29:58 +0000 (04:29 +0000)]
Implement "engineering" display mode.
Stephen Adams [Fri, 7 Jun 1996 04:34:16 +0000 (04:34 +0000)]
Included "load.scm" in syntax sequence.
Added copyright notice.
Stephen Adams [Fri, 7 Jun 1996 04:29:09 +0000 (04:29 +0000)]
Any identifier containing `protect' is no longer exported.
Chris Hanson [Thu, 6 Jun 1996 21:07:57 +0000 (21:07 +0000)]
Extend FLONUM-UNPARSER-CUTOFF to allow specification of the display
mode, e.g. SCIENTIFIC or ENGINEERING.
Chris Hanson [Fri, 24 May 1996 07:33:41 +0000 (07:33 +0000)]
Fix bug: don't enqueue a process in the process-input-queue if it is
already in the queue. Otherwise, it can easily get entered very many
times: if there is input waiting, and the editor is busy, the process
will be queued as often as the select code can run.
Chris Hanson [Sat, 18 May 1996 06:16:11 +0000 (06:16 +0000)]
Change mechanism used to open files and sockets, so that interrupts
are enabled during the open. This is necessary, because any
network-based operation could potentially hang for long periods of
time, and it's desirable for the user to be able to interrupt out of
the operation.
This change requires microcode version 11.154 (or the corresponding
version 13).
In addition to this change, the low-level channel code was changed to
eliminate the now-obsolete gc-daemon interlocking code.
Chris Hanson [Sat, 18 May 1996 06:10:25 +0000 (06:10 +0000)]
Fix code so that interrupts delivered during socket calls will
deallocated sockets where necessary.
Chris Hanson [Sat, 18 May 1996 06:09:25 +0000 (06:09 +0000)]
Add code to allow delivery of interrupts during socket-opening system
calls.
Chris Hanson [Sat, 18 May 1996 06:08:14 +0000 (06:08 +0000)]
Implement new primitives to support new method for opening files and
sockets. This code is required for runtime version 14.170.
Chris Hanson [Fri, 17 May 1996 17:49:45 +0000 (17:49 +0000)]
Allow keyboard interrupts while opening sockets. This is only a
partial solution: there is a small window in which an interrupt can
arrive, leaving the descriptor open but forgotten.
Chris Hanson [Fri, 17 May 1996 17:47:59 +0000 (17:47 +0000)]
Implement new procedure, like WITHOUT-INTERRUPTS, except that it
allows keyboard interrupts.
Chris Hanson [Fri, 17 May 1996 17:26:03 +0000 (17:26 +0000)]
Allow interrupt delivery during socket system calls.
Chris Hanson [Fri, 17 May 1996 17:10:18 +0000 (17:10 +0000)]
Fix typo.
Chris Hanson [Wed, 15 May 1996 20:05:50 +0000 (20:05 +0000)]
Fix thinko.
Chris Hanson [Wed, 15 May 1996 19:10:52 +0000 (19:10 +0000)]
Fix bug: GROUP-INSERT-FILE! was depending on the fact that
INPUT-BUFFER/READ-SUBSTRING did not return until the argument buffer
was full -- which is no longer true.
Chris Hanson [Wed, 15 May 1996 18:48:40 +0000 (18:48 +0000)]
Eliminate random heuristic buffer-size modulation from previous
change. It turns out that the behavior that necessitated this
heuristic was a bug in the runtime system.
Chris Hanson [Wed, 15 May 1996 18:47:19 +0000 (18:47 +0000)]
Eliminate loop in INPUT-BUFFER/READ-SUBSTRING. When line-translation
was in effect, this loop caused this procedure to read input until the
buffer was filled. However, the procedure is supposed to return as
soon as some input is available.
Chris Hanson [Wed, 15 May 1996 06:10:56 +0000 (06:10 +0000)]
Fix thinko: point was not being moved appropriately when marking
headers backwards.
Chris Hanson [Wed, 15 May 1996 05:51:26 +0000 (05:51 +0000)]
Fix typo.
Chris Hanson [Wed, 15 May 1996 04:40:17 +0000 (04:40 +0000)]
Force the reader on-line when the user requests re-reading all of the
headers in a group. Save the database files after refreshing all of
the groups. Fix typo.
Chris Hanson [Wed, 15 May 1996 00:04:34 +0000 (00:04 +0000)]
In SCREEN-MOVE-CURSOR, forget current position of cursor in order to
force it to be moved at the end of the update. This works around bugs
in the terminal implementations: sometimes the cursor is moved as a
side-effect of some other operation. It's easier to fix this here
than to modify each implementation to guarantee that the cursor is not
moved.
Chris Hanson [Tue, 14 May 1996 23:46:07 +0000 (23:46 +0000)]
In SCREEN-FORCE-UPDATE, forget the cursor position, so that it will be
updated during the redisplay.
Chris Hanson [Tue, 14 May 1996 23:35:22 +0000 (23:35 +0000)]
Yet more work on synchronous-subprocess I/O. The simple loop using
non-blocking I/O has atrocious performance characteristics, at least
under OS/2. It's now been replaced by something that uses blocking
I/O where possible, and modulates the buffer length to provide better
feedback for incremental output.
Chris Hanson [Tue, 14 May 1996 05:42:46 +0000 (05:42 +0000)]
Guarantee that the presentation space for a window is set to its
normal colors at the end of a redisplay. Previously, it was often
left in the highlight colors, which would cause areas of the window to
be painted in the foreground color when they were exposed.
Chris Hanson [Tue, 14 May 1996 05:41:08 +0000 (05:41 +0000)]
Move the cursor only when its position is changed. Previously, the
cursor was being moved many times in a row to the same location. This
was caused by repeated screen updates being run as a result of
processing input events. Input events can be quite common even when
there is no typing going on, as a result of window-system operations,
mouse tracking, etc.
Chris Hanson [Tue, 14 May 1996 01:55:25 +0000 (01:55 +0000)]
Change DISPLAY-STYLE in order to orthogonalize the effects that it can
have. New design allows each of the different style effects to be
selected separately.
Chris Hanson [Tue, 14 May 1996 01:44:28 +0000 (01:44 +0000)]
Change DISPLAY-STYLE in order to orthogonalize the effects that it can
have. New design allows each of the different style effects to be
selected separately.
Chris Hanson [Tue, 14 May 1996 01:24:18 +0000 (01:24 +0000)]
Change definition of UPDATE-INFERIOR! in order to centralize the
testing of DISPLAY-STYLE when deciding whether or not to update the
inferior.
Chris Hanson [Tue, 14 May 1996 01:07:46 +0000 (01:07 +0000)]
When doing redisplay in a synchronous subprocess, update once before
starting I/O loop.
Chris Hanson [Tue, 14 May 1996 00:53:56 +0000 (00:53 +0000)]
Define new operations: CLOSE-INPUT, CLOSE-OUTPUT, INPUT-OPEN?,
OUTPUT-OPEN?, and WRITE-CHARS.
Chris Hanson [Tue, 14 May 1996 00:13:04 +0000 (00:13 +0000)]
Rewrite SYNCHRONOUS-PROCESS-WAIT to reduce the amount of redisplay
activity, and to eliminate direct references to channels.
Chris Hanson [Mon, 13 May 1996 23:59:34 +0000 (23:59 +0000)]
Define new operations: CLOSE-INPUT, CLOSE-OUTPUT, INPUT-OPEN?,
OUTPUT-OPEN?, and WRITE-CHARS.
Chris Hanson [Mon, 13 May 1996 05:01:11 +0000 (05:01 +0000)]
Fix bug: reading output from a subprocess would occasionally signal an
error because the subprocess output channel was closed by Scheme when
it detected that the subprocess had closed the other end of the pipe.
However, the "output-copier" loop continued to operate assuming that
the channel was open.
Chris Hanson [Sun, 12 May 1996 07:14:21 +0000 (07:14 +0000)]
Change popclient code to use new indicator to allow redisplay during
synchronous-subprocess execution.
Chris Hanson [Sun, 12 May 1996 07:13:03 +0000 (07:13 +0000)]
Fix bug in code that writes data to subprocess -- channel was being
closed before output buffer was flushed. Also, add code to specify
whether or not redisplay is allowed during synchronous-process
execution, and default it to disallowed, because it is extremely
distracting while doing a revert-buffer in a Dired buffer.
Chris Hanson [Sun, 12 May 1996 02:34:30 +0000 (02:34 +0000)]
Wrap debugger extent with CLEANUP-POP-UP-BUFFERS. This allows the
debugger to be called at times when there are active popped-up
buffers. Previously, quitting from the debugger in this situation
would cause the previously popped-up buffer to be hidden.
Chris Hanson [Sun, 12 May 1996 02:19:20 +0000 (02:19 +0000)]
Add commands to read and write the .newsrc file.
Chris Hanson [Sat, 11 May 1996 08:51:31 +0000 (08:51 +0000)]
When doing certain extended server interactions, do redisplay
periodically to show changes to the user.
Chris Hanson [Sat, 11 May 1996 08:50:15 +0000 (08:50 +0000)]
Finish changes stared with previous revision: must handle visibility
events specially while previewing events; must also handle paint
events specially. Handling of paint events is different from handling
of X expose events -- this seems to mean that when a window is
exposed, X sends the expose event first, but OS/2 sends something
other than the paint event first.
Chris Hanson [Sat, 11 May 1996 08:46:52 +0000 (08:46 +0000)]
Pop up a buffer showing the "popclient" output so that it is visible
while "popclient" is running. Use new popped-up buffer features to
keep it visible if an error occurs.
Chris Hanson [Sat, 11 May 1996 08:44:56 +0000 (08:44 +0000)]
Use new procedure MAYBE-KILL-POP-UP-BUFFER.
Chris Hanson [Sat, 11 May 1996 08:44:28 +0000 (08:44 +0000)]
Implement new procedures: MAYBE-KILL-POP-UP-BUFFER calls
KILL-POP-UP-BUFFER if its argument is the popped-up buffer.
KEEP-POP-UP-BUFFER prevents a popped-up buffer from being killed by an
enclosing CLEANUP-POP-UP-BUFFERS. POPPED-UP-BUFFER returns the
POPPED-UP buffer, if any.
Chris Hanson [Sat, 11 May 1996 08:41:15 +0000 (08:41 +0000)]
Change SYNCHRONOUS-PROCESS-WAIT so that it does redisplay while it's
waiting. This allows the output from a synchronous subprocess to be
incrementally displayed as it is read.
Chris Hanson [Sat, 11 May 1996 08:38:11 +0000 (08:38 +0000)]
Eliminate CALL-WITH-PROTECTED-CONTINUATION.
Chris Hanson [Fri, 10 May 1996 18:48:03 +0000 (18:48 +0000)]
Change initialization code to allocate a minimum of 256 file handles
for Scheme. The old default of 20 is too small -- quickly eaten by a
small number of subprocesses in Edwin -- and worse, the default is not
a constant but depends on the method used to invoke Scheme.
The number of file handles can by dynamically changed using a new
primitive. The channel table is initialized to 1024 entries, allowing
plenty of room for growth should that be desired.
Chris Hanson [Fri, 10 May 1996 18:39:28 +0000 (18:39 +0000)]
Fix thinko in process-name allocation.
Chris Hanson [Thu, 9 May 1996 20:38:40 +0000 (20:38 +0000)]
Fix typo.
Chris Hanson [Thu, 9 May 1996 20:22:56 +0000 (20:22 +0000)]
Add support for sockets and GDBM under OS/2.
Chris Hanson [Thu, 9 May 1996 20:22:30 +0000 (20:22 +0000)]
Add support for sockets under OS/2.
Chris Hanson [Thu, 9 May 1996 20:22:03 +0000 (20:22 +0000)]
Initial revision
Chris Hanson [Thu, 9 May 1996 17:25:52 +0000 (17:25 +0000)]
Eliminate support for use of "tcp" subprocess in place of real socket
support. This was used under OS/2 to work around the lack of socket
support, but did not work properly because the subprocess could not be
reliably killed. This is now moot since OS/2 socket support has been
implemented.
Chris Hanson [Thu, 9 May 1996 17:01:38 +0000 (17:01 +0000)]
Change release version number from 7.4.3 to 7.5, since the former will
be needed for patches to the 7.4 release, and the current sources
contain code that won't go into the 7.4 series. Also replace the
"(alpha)" with "a" to be more succinct.
Chris Hanson [Wed, 8 May 1996 20:57:53 +0000 (20:57 +0000)]
Fix bug -- inverted meaning of input vs. output for subprocess
communications.
Chris Hanson [Wed, 8 May 1996 05:24:30 +0000 (05:24 +0000)]
Fix bug in handling of top-level indentation. This bug was introduced
in revision 1.11.
Chris Hanson [Mon, 6 May 1996 00:09:41 +0000 (00:09 +0000)]
Another round of changes to the News reader.
Chris Hanson [Sun, 5 May 1996 18:58:41 +0000 (18:58 +0000)]
Make BUFFER-POINT a little smarter.
Chris Hanson [Sat, 4 May 1996 17:38:55 +0000 (17:38 +0000)]
Fix bug under OS/2: when overwriting a file that has its "archived"
bit cleared, the bit should be set but was not.
Chris Hanson [Sat, 4 May 1996 17:30:08 +0000 (17:30 +0000)]
Fix bug: encoding times with time-zone information was not scaling the
time-zone information to seconds as expected by the microcode.
Chris Hanson [Fri, 3 May 1996 20:00:14 +0000 (20:00 +0000)]
Fix handling of VISIBILITY event so that screen contents are
immediately invalidated. This allows subsequent redisplay events to
take proper action.
Chris Hanson [Fri, 3 May 1996 19:55:46 +0000 (19:55 +0000)]
Fix bug in marking of "ignored" articles from article buffer.
Chris Hanson [Fri, 3 May 1996 07:41:10 +0000 (07:41 +0000)]
Fix think-o in INIT-FILE-SPECIFIER->PATHNAME for OS/2 and Windows.
Chris Hanson [Fri, 3 May 1996 07:00:45 +0000 (07:00 +0000)]
Add exports for "win32com".
Chris Hanson [Fri, 3 May 1996 06:58:59 +0000 (06:58 +0000)]
Change command names and documentation strings to use the noun "frame"
rather than "screen".
Chris Hanson [Fri, 3 May 1996 06:58:21 +0000 (06:58 +0000)]
Change command names and documentation strings to use the noun "frame"
rather than "screen".
Chris Hanson [Fri, 3 May 1996 06:56:46 +0000 (06:56 +0000)]
Add code to avoid writing the title-bar string except when it changes.
Otherwise it flickers annoyingly in common circumstances.