Guillermo J. Rozas [Wed, 3 Oct 1990 21:53:21 +0000 (21:53 +0000)]
Add handler for COMPILER-ERROR-RESTART.
Guillermo J. Rozas [Wed, 3 Oct 1990 18:57:28 +0000 (18:57 +0000)]
Add handler for RC_COMP_ERROR_RESTART.
Guillermo J. Rozas [Wed, 3 Oct 1990 18:57:03 +0000 (18:57 +0000)]
Add comutil_primitive_error and associated changes (new return code,
and re-use ERR_COMPILED_CODE_ERROR).
Guillermo J. Rozas [Wed, 3 Oct 1990 18:55:46 +0000 (18:55 +0000)]
Change ERR_BAD_COMBINATION to ERR_COMPILED_CODE_ERROR.
Change how comutil_primitive_error works, and add comp_error_restart.
Guillermo J. Rozas [Wed, 3 Oct 1990 16:49:32 +0000 (16:49 +0000)]
Add RC_COMP_ERROR_RESTART.
Guillermo J. Rozas [Wed, 3 Oct 1990 16:49:07 +0000 (16:49 +0000)]
Add COMPILER-ERROR-RESTART.
Guillermo J. Rozas [Wed, 3 Oct 1990 15:16:32 +0000 (15:16 +0000)]
Remove compiled_code_error_code, no longer used.
Guillermo J. Rozas [Wed, 3 Oct 1990 15:12:51 +0000 (15:12 +0000)]
Disable ERR_BAD_COMBINATION.
Chris Hanson [Wed, 3 Oct 1990 04:56:28 +0000 (04:56 +0000)]
* X terminal interface extensively changed to use new event-handling
model -- this requires microcode 11.45 or later.
* `delete-screen' command now works. `create-new-screen' command
removed.
* `save-buffers-kill-scheme' command now prompts for confirmation.
* Changed all "event" hook variables to have event distributors as
their values. Users get access to an event by adding themselves to
the event distributor.
* X screens now update their window and icon names under the control
of the new variables `x-screen-name-format' and
`x-screen-icon-name-format'.
Changes to programming interface:
* Changed names:
current-screen selected-screen
all-windows window-list (replacing old definition)
all-screens screen-list
create-new-frame select-buffer-in-new-screen
screen-window screen-root-window
change-screen select-screen
* `typein-window?' is now true if the window is a typein window of any
screen. Previously it was only true of the typein window of the
selected screen.
* `select-window' and `select-cursor' now work for windows in any
screen, rather than just for the selected screen.
* Changed `make-buffer' to use `editor-default-mode' for new buffers,
rather than `fundamental-mode'.
* New procedure `typein-edit-other-window' returns the non-typein
window that was active immediately before the current typein edit
began.
* New procedure `format-modeline-string' permits more general use of
the formatting language used for `mode-line-format'.
* Implemented `command-reader/reset-and-execute', which aborts to the
top-level command reader and executes a thunk there before reading
the next command. This mechanism replaces the
`set-reader-do-before-next-read!' procedure.
Internal changes:
* Modeline events for each window are now passed to the window's
screen, in case the screen needs them.
* Guaranteed that `buffer-modified' modeline event is only signalled
when the "modified" bit of the buffer changes.
* Eliminated `cursor-moved' modeline event.
* Screens now cache their dimensions. X screens use this cached
information to determine when a screen's size has changed.
* Removed `reader-continuation' stuff, which was commented out anyway.
Current assumption is that, no matter how many screens there are,
there is only one input port. For X, this means that all screens
are on the same display.
* Editor-frame operations are now subsumed by screen operations.
There are no editor-frame operations in the (edwin) package.
* Many references to `update-screens!' changed to be calls to
`update-selected-screen!'.
* Incremental search bullet-proofed to remove its message when it is
aborted by any means.
* `standard-editor-initialization' bullet-proofed against aborts.
* Typein edits must consistenly use `current-typein-bufferset' for
typein buffers.
* Eliminated "rescrn" by moving `toggle-screen-width' into "wincom".
Chris Hanson [Wed, 3 Oct 1990 01:29:12 +0000 (01:29 +0000)]
Remove most of the calls to `guarantee-input-port'. This is overkill,
and the performance penalty is undesirable.
Chris Hanson [Wed, 3 Oct 1990 00:11:45 +0000 (00:11 +0000)]
Update to match new X interface. Also reformat to fit on 80x80 pages.
Chris Hanson [Tue, 2 Oct 1990 22:52:47 +0000 (22:52 +0000)]
Extensive rewrite of X11 interface. New event-handling model, cleanup
of several bugs, general reformatting of code.
Requires runtime version 14.97 or later, and edwin 3.21 or later.
Chris Hanson [Tue, 2 Oct 1990 22:45:01 +0000 (22:45 +0000)]
Change X graphics to match new event-handling in microcode.
Chris Hanson [Tue, 2 Oct 1990 22:43:13 +0000 (22:43 +0000)]
Don't use obsolete primitive `setup-timer-interrupt'.
Guillermo J. Rozas [Tue, 2 Oct 1990 21:51:25 +0000 (21:51 +0000)]
Make gpio primitives interruptible.
Guillermo J. Rozas [Tue, 2 Oct 1990 21:50:09 +0000 (21:50 +0000)]
Add asm_primitive_error.
Guillermo J. Rozas [Tue, 2 Oct 1990 21:49:25 +0000 (21:49 +0000)]
Add comutil_primitive_error.
Guillermo J. Rozas [Mon, 1 Oct 1990 23:04:37 +0000 (23:04 +0000)]
Arthur's fixes to some text.
Chris Hanson [Mon, 1 Oct 1990 22:42:02 +0000 (22:42 +0000)]
`OS_process_timer_clear' must not signal errors, even if
`OS_process_timer_set' isn't defined.
Guillermo J. Rozas [Mon, 1 Oct 1990 22:17:05 +0000 (22:17 +0000)]
Add a note about integrations.
Guillermo J. Rozas [Sat, 29 Sep 1990 23:00:31 +0000 (23:00 +0000)]
Initial revision
Arthur Gleckler [Fri, 28 Sep 1990 01:56:48 +0000 (01:56 +0000)]
Added (guarantee-input-port port) where necessary to improve type
safety.
Chris Hanson [Thu, 27 Sep 1990 03:33:02 +0000 (03:33 +0000)]
Pretty printer didn't handle #() correctly.
Guillermo J. Rozas [Thu, 20 Sep 1990 03:02:26 +0000 (03:02 +0000)]
Add nbits = 0 case to copy_bits to compensate for division bug in gcc.
The bug arises when dividing by OBJECT_LENGTH inside
BIT_STRING_INDEX_TO_WORD. The division is optimized into an unsigned
left shift that works for non-negative values, but not for -1, used
when the number of bits is 0!
Chris Hanson [Wed, 19 Sep 1990 00:35:10 +0000 (00:35 +0000)]
Fix pretty printer's handling of custom pair and vector unparsers.
Chris Hanson [Wed, 19 Sep 1990 00:32:55 +0000 (00:32 +0000)]
Alter `unparser/tagged-pair-method' and
`unparser/tagged-vector-method' to disallow futures as tags.
Guillermo J. Rozas [Mon, 17 Sep 1990 19:54:34 +0000 (19:54 +0000)]
Fix recaching bug in extend_frame when the root of the chain is not
the global environment and there is no cell being shadowed.
Compiler_uncache was not called so shadowing_recache called from
higher levels was called on the wrong shadowed cell. There is no
shadowed cell in this case so we use the cell containing the
unbound_trap_object. This makes compiler_uncache and compiler_recache
punt the caching operation.
Chris Hanson [Fri, 14 Sep 1990 01:47:22 +0000 (01:47 +0000)]
*** empty log message ***
Chris Hanson [Thu, 13 Sep 1990 23:46:06 +0000 (23:46 +0000)]
Teach pretty-printer to respect the list depth and breadth limits.
Chris Hanson [Thu, 13 Sep 1990 23:43:13 +0000 (23:43 +0000)]
Change subproblem marker to "###".
Chris Hanson [Thu, 13 Sep 1990 23:33:49 +0000 (23:33 +0000)]
Change subproblem marker to "###".
Chris Hanson [Thu, 13 Sep 1990 23:30:16 +0000 (23:30 +0000)]
Add list depth and breadth limiting to the debugger. Export the
debugger's control variables to the global environment.
Chris Hanson [Thu, 13 Sep 1990 23:08:53 +0000 (23:08 +0000)]
Implement new `fresh-line' operation.
Chris Hanson [Thu, 13 Sep 1990 22:31:59 +0000 (22:31 +0000)]
Add new procedure `with-output-string-port'.
Chris Hanson [Thu, 13 Sep 1990 20:12:50 +0000 (20:12 +0000)]
Recognize infinities and NaNs, and print them out specially.
Mark Friedman [Wed, 12 Sep 1990 20:12:53 +0000 (20:12 +0000)]
Support for multiple screens.
Support for new runtime debugger stuff.
Uses apply-hooks instead of entities.
Mark Friedman [Wed, 12 Sep 1990 19:56:55 +0000 (19:56 +0000)]
delete-screen doesn't yet work.
Mark Friedman [Wed, 12 Sep 1990 19:33:34 +0000 (19:33 +0000)]
entity.scm is now obsolete. Apply hooks are used instead.
Chris Hanson [Wed, 12 Sep 1990 16:45:01 +0000 (16:45 +0000)]
Update continuation browser to match changes in the debugger.
Chris Hanson [Wed, 12 Sep 1990 07:53:39 +0000 (07:53 +0000)]
Update continuation browser to match changes in the debugger.
Chris Hanson [Wed, 12 Sep 1990 02:47:19 +0000 (02:47 +0000)]
Fix typo in `debug'. Change `command/return' so that the $ option
doesn't unsyntax and then resyntax the expression.
Chris Hanson [Wed, 12 Sep 1990 02:44:12 +0000 (02:44 +0000)]
Fix a number of instances of syntactic keywords being used as
variables.
Chris Hanson [Wed, 12 Sep 1990 02:29:32 +0000 (02:29 +0000)]
Fix a number of instances of syntactic keywords being used as
variables.
Chris Hanson [Wed, 12 Sep 1990 02:23:23 +0000 (02:23 +0000)]
Fix a number of instances of syntactic keywords being used as
variables.
Chris Hanson [Wed, 12 Sep 1990 02:19:36 +0000 (02:19 +0000)]
Fix a number of instances of syntactic keywords being used as
variables.
Guillermo J. Rozas [Wed, 12 Sep 1990 02:09:07 +0000 (02:09 +0000)]
Some minor rewordings.
Chris Hanson [Wed, 12 Sep 1990 00:43:05 +0000 (00:43 +0000)]
For the compiler's `COMBINATION-OPERAND' return type, index zero means
the operator.
Chris Hanson [Wed, 12 Sep 1990 00:39:42 +0000 (00:39 +0000)]
Fix a number of instances of syntactic keywords being used as
variables.
Chris Hanson [Tue, 11 Sep 1990 22:58:02 +0000 (22:58 +0000)]
Fix a number of instances of syntactic keywords being used as
variables.
Chris Hanson [Tue, 11 Sep 1990 22:33:57 +0000 (22:33 +0000)]
Add new procedures to signal wrong type and bad range errors.
Chris Hanson [Tue, 11 Sep 1990 22:06:09 +0000 (22:06 +0000)]
Add new procedures to signal wrong type and bad range errors.
Chris Hanson [Tue, 11 Sep 1990 21:58:52 +0000 (21:58 +0000)]
Add new procedures to signal wrong type and bad range errors.
Chris Hanson [Tue, 11 Sep 1990 21:17:02 +0000 (21:17 +0000)]
Tweak presentation.
Chris Hanson [Tue, 11 Sep 1990 21:13:00 +0000 (21:13 +0000)]
*** empty log message ***
Chris Hanson [Tue, 11 Sep 1990 20:46:19 +0000 (20:46 +0000)]
Initial revision
Chris Hanson [Tue, 11 Sep 1990 20:46:01 +0000 (20:46 +0000)]
* Advice package now signals error if the user attempts to advise
anything but an compound procedure.
* Continuation parser keeps track of the type of the previous stack
frame. This information is used as context in some situations.
This mechanism replaces special-purpose flag `allow-next-extended?'.
* Continuation parser slightly reorganized and commented to make it
easier to understand.
* Debugger modified to provide more flexible control over use of
history information, to provide more detailed information about
stack frames, and to make it more self-explanatory. Also knows
about "simulated" compiled-code environment frames, and ignores
them.
* The environment inspector has been modified to make it more
self-explanatory. The N command has been replaced by an O command
like that of the debugger.
* `pretty-print' now has additional optional argument that specifies
an indentation for the printed expression. If given, the output is
indented by that many columns.
* The emacs interface now has a hook for evaluating arbitrary
emacs-lisp expressions. This is used to provide a better debugger
interface.
**** This requires "xscheme.el" version 1.26 or later. ****
* `stack-frame/debugging-info' now returns a third value,
"subexpression", which indicates the subexpression of the expression
that the next later subproblem is evaluating.
* The lambda abstraction now forces the use of internal lambda
expressions for auxiliary variables. This is required for correct
semantics of `letrec'.
* `make-lambda' now does error-checking on its parameter-list
arguments, which disallows duplicates in the parameter lists.
* The `procedure' abstraction has been split off into a separate file.
`procedure-arity' has been modified to handle entities correctly.
A new datatype, `apply-hook', is like entities except that it
doesn't pass itself to the handler. `compound-procedure' operations
have been removed from the global environment; use generic
operations instead.
* The unsyntaxer has a new entry point, `unsyntax-with-substitutions',
which allows subexpressions of an expression to be replaced in the
output with arbitrary objects.
* Removed `dynamic-state-let' from `system-global-syntax-table'.
* The syntaxer now disallows the use of syntactic keywords as
variables. This applies to references, bindings, and definitions.
* The syntaxer signals an error if the name of a named `let' is also
one of its bound variables.
* The syntaxer signals an error if there are duplicates in the
parameters of a lambda expression.
* Compiled-code environments that do not have interpreter-compatible
ancestors now simulate such ancestors for debugging convenience.
The simulated ancestor is the closing environment of the compiled
code, if known, otherwise it is the system global environment.
Chris Hanson [Tue, 11 Sep 1990 19:50:29 +0000 (19:50 +0000)]
Change `x-window-read-event-flags!' to mask its result so that only
the least significant 3 bits are returned.
Chris Hanson [Tue, 11 Sep 1990 05:16:14 +0000 (05:16 +0000)]
Change some EMPTY_LIST references to SHARP_F.
Chris Hanson [Tue, 11 Sep 1990 01:51:20 +0000 (01:51 +0000)]
Update copyright notice.
Chris Hanson [Tue, 11 Sep 1990 00:07:43 +0000 (00:07 +0000)]
Add hook that allows Scheme to evaluate arbitrary expression in Emacs.
Guillermo J. Rozas [Mon, 10 Sep 1990 18:13:21 +0000 (18:13 +0000)]
Initial revision
Chris Hanson [Sun, 9 Sep 1990 03:13:56 +0000 (03:13 +0000)]
Fix typo.
Chris Hanson [Sun, 9 Sep 1990 03:11:16 +0000 (03:11 +0000)]
Fix typo and rename lambda parameter.
Chris Hanson [Sat, 8 Sep 1990 01:38:18 +0000 (01:38 +0000)]
Use `FIXNUM_TO_LONG' in definition of `fixnum_to_long'.
Chris Hanson [Sat, 8 Sep 1990 00:10:48 +0000 (00:10 +0000)]
* Eliminate BELL, USHORT_SIZE, ULONG_SIZE, DBFLT_SIZE, UNSIGNED_SHIFT,
FLONUM_EXPT_SIZE, FLONUM_MANTISSA_BITS, MAX_FLONUM_EXPONENT, quick.
* Rename `Exit_Scheme' macros to upper case.
* New macro UNSIGNED_SHIFT_BUG has opposite meaning of old
UNSIGNED_SHIFT -- it says that the compiler uses arithmetic right
shift on the `unsigned long' type.
* Redo MIPS configuration to handle non-DEC machines.
* Add configurations for i386 and NeXT.
* Eliminate `term_type' definition -- HP's compiler no longer has this
problem.
* Change `FIXNUM_TO_LONG' to use more efficient conversion suggested
by Aubrey Jaffer.
Chris Hanson [Fri, 7 Sep 1990 22:35:43 +0000 (22:35 +0000)]
Fix typos in methods for `fixnum-quotient' and `fixnum-remainder'.
Chris Hanson [Fri, 7 Sep 1990 22:25:16 +0000 (22:25 +0000)]
Fix typos in methods for `fixnum-quotient' and `fixnum-remainder'.
Chris Hanson [Fri, 7 Sep 1990 18:39:51 +0000 (18:39 +0000)]
Eliminate uses of `entity' datatype. Use new `apply-hook' datatype
instead.
Chris Hanson [Fri, 7 Sep 1990 00:46:02 +0000 (00:46 +0000)]
Eliminate variables named `lambda'. Pull all empty variable
definitions to the beginning of the file.
Chris Hanson [Fri, 7 Sep 1990 00:27:35 +0000 (00:27 +0000)]
Make reader accept "#*" as a valid, zero-length bit string.
Chris Hanson [Thu, 6 Sep 1990 19:02:46 +0000 (19:02 +0000)]
Add configuration information for NeXT.
Chris Hanson [Thu, 6 Sep 1990 19:02:06 +0000 (19:02 +0000)]
Initial revision
Mark Friedman [Fri, 31 Aug 1990 20:18:01 +0000 (20:18 +0000)]
Support for multiple screens.
Chris Hanson [Mon, 27 Aug 1990 20:08:39 +0000 (20:08 +0000)]
When stopping Scheme, use signal that was used to tell us we needed to
stop. Previously, we always used SIGTSTP.
Guillermo J. Rozas [Mon, 27 Aug 1990 13:23:45 +0000 (13:23 +0000)]
Fix a bug in the interaction between multi-closures and frame reusing.
The shared closure block was not considered when determining whether a
slot could be rewritten or not.
Guillermo J. Rozas [Sat, 25 Aug 1990 03:08:22 +0000 (03:08 +0000)]
Fix edti bug from last set of changes.
Guillermo J. Rozas [Fri, 24 Aug 1990 20:20:30 +0000 (20:20 +0000)]
Fix two bugs in multiclosure code:
- non-canonical multi-closure entries appearing in letrecs were
computed incorrectly. The context offset is not the context after
binding since the code has not finished pushing.
- referencing a closure from within itself cannot bypass the variable
lookup code if the closure for environment is not the closure for
value. This only affects machines where closures are canonicalized
for environment.
Guillermo J. Rozas [Thu, 23 Aug 1990 00:38:13 +0000 (00:38 +0000)]
Change internal procedure format words to look like return addresses
so that the debugger can parse the stack.
Guillermo J. Rozas [Wed, 22 Aug 1990 02:03:18 +0000 (02:03 +0000)]
Make open procedures look like return addresses to the debugger.
Guillermo J. Rozas [Tue, 21 Aug 1990 04:19:12 +0000 (04:19 +0000)]
Modify the stack parser and environment utilities to handle interrupt
frames from compiled code in which the return address is a procedure.
Guillermo J. Rozas [Tue, 21 Aug 1990 02:24:33 +0000 (02:24 +0000)]
Add next-continuation-offset field to rtl-procedures so that internal
procedures can be represented as return addresses for the debugger.
Guillermo J. Rozas [Tue, 21 Aug 1990 02:23:26 +0000 (02:23 +0000)]
Fix broken comment.
Guillermo J. Rozas [Tue, 21 Aug 1990 02:20:55 +0000 (02:20 +0000)]
Replace internal code words with return address code words so the
debugger will not get confused about internal procedures and interrupt
frames in compiled code.
Guillermo J. Rozas [Fri, 17 Aug 1990 23:45:53 +0000 (23:45 +0000)]
Update the list of missing macros to document.
Guillermo J. Rozas [Fri, 17 Aug 1990 23:40:55 +0000 (23:40 +0000)]
Split cache flusing code from STORE_EXECUTE_CACHE_ADDRESS, since it is
not needed at GC time because the whole cache is flushed immediately
afterwards.
The flushing code is now in FLUSH_I_CACHE_REGION, used explicitly by
store_uuo_link in cmpint.c
Guillermo J. Rozas [Fri, 17 Aug 1990 23:39:55 +0000 (23:39 +0000)]
Split cache flusing code from STORE_EXECUTE_CACHE_ADDRESS, since it is
not needed at GC time.
The flushing code is now in FLUSH_I_CACHE_REGION, used explicitly by
store_uuo_link in cmpint.c
Guillermo J. Rozas [Fri, 17 Aug 1990 23:28:46 +0000 (23:28 +0000)]
Split cache flusing code from STORE_EXECUTE_CACHE_ADDRESS, since it is
not needed at GC time.
The flushing code is now in FLUSH_I_CACHE_REGION, used explicitly by
store_uuo_link in cmpint.c
Mark Friedman [Fri, 17 Aug 1990 21:00:39 +0000 (21:00 +0000)]
Added dependency of x11base.o on ux.h to match the includes in x11base.c
Mark Friedman [Fri, 17 Aug 1990 20:05:32 +0000 (20:05 +0000)]
Made definition of HAVE_SELECT be posix independent.
Chris Hanson [Thu, 16 Aug 1990 23:36:51 +0000 (23:36 +0000)]
Export `execute_reload_cleanups' and call it when resuming after a
`dump-world'.
Chris Hanson [Thu, 16 Aug 1990 22:33:54 +0000 (22:33 +0000)]
Add memoization to `UX_SC_CLK_TCK'.
Chris Hanson [Thu, 16 Aug 1990 20:13:17 +0000 (20:13 +0000)]
Don't use `event:before-exit' to tell the microcode to clean itself
up. There is now a new hook at the microcode level that delays this
cleanup until the `disk-restore' is committed.
Chris Hanson [Thu, 16 Aug 1990 20:10:47 +0000 (20:10 +0000)]
Don't call `x-close-all-displays' before disk-restoring.
Chris Hanson [Thu, 16 Aug 1990 20:09:57 +0000 (20:09 +0000)]
Don't call `close-all-open-files' before disk-restoring.
Chris Hanson [Thu, 16 Aug 1990 20:06:34 +0000 (20:06 +0000)]
Implement new `reload_cleanup' facility to provide a hook for cleaning
up various things before a disk-restore.
Chris Hanson [Thu, 16 Aug 1990 20:05:21 +0000 (20:05 +0000)]
Use new `add_reload_cleanup' facility to close all the display
connections.
Chris Hanson [Thu, 16 Aug 1990 19:23:35 +0000 (19:23 +0000)]
Change declarations of `x_malloc' and `x_realloc' to use `PTR' instead
of `char *'.
Chris Hanson [Thu, 16 Aug 1990 19:22:41 +0000 (19:22 +0000)]
Change `OS_channel_close_all' to internal definition and use new
`add_reload_cleanup' facility to install it.
Chris Hanson [Thu, 16 Aug 1990 19:20:39 +0000 (19:20 +0000)]
Delete `OS_channel_close_all'.
Chris Hanson [Thu, 16 Aug 1990 19:19:49 +0000 (19:19 +0000)]
Export `add_reload_cleanup'.