Chris Hanson [Wed, 23 Dec 1987 03:43:31 +0000 (03:43 +0000)]
Implement more powerful operations for manipulating stack locatives.
These are useful for writing lexpr primitives.
Chris Hanson [Fri, 18 Dec 1987 00:03:51 +0000 (00:03 +0000)]
Alter `OS_tty_read_char' under unix so that it echoes the input if the
standard input is a file.
Chris Hanson [Thu, 17 Dec 1987 20:34:34 +0000 (20:34 +0000)]
Define `string-hash-mod' in the global environment.
Chris Hanson [Thu, 17 Dec 1987 04:12:31 +0000 (04:12 +0000)]
Typo in `subvector_move_prefix'.
Chris Hanson [Wed, 16 Dec 1987 19:39:33 +0000 (19:39 +0000)]
Fix several bugs in "vector.c" found by Morry Katz, mostly having to
do with indices not being checked to eliminate negative numbers.
Reorganize and update all of the code.
Chris Hanson [Wed, 16 Dec 1987 19:38:05 +0000 (19:38 +0000)]
Fix several bugs found by Morry Katz, mostly having to do with indices
not being checked to eliminate negative numbers. Reorganize and
update all of the code.
Chris Hanson [Tue, 15 Dec 1987 16:07:57 +0000 (16:07 +0000)]
Make `arg_channel' be a public function per request of AAB.
Chris Hanson [Mon, 14 Dec 1987 00:15:38 +0000 (00:15 +0000)]
Change `System_Clock' to `OS_process_clock', scaling in milliseconds
instead of centiseconds. Implement `real-time-clock' primitive.
Implement "suspension" feature which generates special interrupt.
This feature is activated by SIGHUP.
Chris Hanson [Sun, 13 Dec 1987 22:47:00 +0000 (22:47 +0000)]
Update this to match microcode.
Chris Hanson [Sun, 13 Dec 1987 22:19:36 +0000 (22:19 +0000)]
Add new interrupt code which means that the interpreter was
requested to exit by some external source.
Chris Hanson [Sun, 13 Dec 1987 21:59:30 +0000 (21:59 +0000)]
Add new termination code which means that the interpreter was
requested to exit by some external source.
Chris Hanson [Sun, 13 Dec 1987 21:23:53 +0000 (21:23 +0000)]
Change `System_Clock' to `OS_process_clock', scaling in milliseconds
instead of centiseconds.
Panayotis Skordos [Sun, 13 Dec 1987 00:12:39 +0000 (00:12 +0000)]
fixed histogram
Panayotis Skordos [Sat, 12 Dec 1987 22:06:42 +0000 (22:06 +0000)]
Added array-read-ascii-file, array-write-ascii-file
Removed array-log! (covered by array-unary-function!).
Panayotis Skordos [Sat, 12 Dec 1987 19:13:51 +0000 (19:13 +0000)]
*** empty log message ***
Chris Hanson [Fri, 11 Dec 1987 16:13:21 +0000 (16:13 +0000)]
Fix mistaken bug fix of last revision.
Chris Hanson [Thu, 10 Dec 1987 21:52:18 +0000 (21:52 +0000)]
The type object being constructed for named structures of type LIST
was incorrect.
Chris Hanson [Thu, 10 Dec 1987 04:01:50 +0000 (04:01 +0000)]
Fix typo.
Chris Hanson [Thu, 10 Dec 1987 02:40:19 +0000 (02:40 +0000)]
Change `xscheme-select-process-buffer' to select the window of the
Scheme process if that is visible.
Guillermo J. Rozas [Wed, 9 Dec 1987 22:35:43 +0000 (22:35 +0000)]
Add the STACK-TOP-ADDRESS primitive to comutl.c for use by the
compiled code debugger.
Guillermo J. Rozas [Wed, 9 Dec 1987 22:11:26 +0000 (22:11 +0000)]
Typo.
Guillermo J. Rozas [Wed, 9 Dec 1987 21:51:55 +0000 (21:51 +0000)]
Add hooks for the compiled code debugger.
Joe Marshall [Wed, 9 Dec 1987 21:37:43 +0000 (21:37 +0000)]
Fix RE-CHAR-SET-ADJOIN! to have arg_ascii_integer.
Guillermo J. Rozas [Wed, 9 Dec 1987 06:31:42 +0000 (06:31 +0000)]
Fix bug in purify
Under some circumstances (prob = 1/512) a bufferfull was lost between
the pure copy and the constant copy, because the header overflowed the
free buffer, and the free buffer dumping code assumed that the buffer
would be dumped when scan was dumped, but scan was reinitialized
immediately.
Chris Hanson [Tue, 8 Dec 1987 14:01:05 +0000 (14:01 +0000)]
Implement error message for unrecognized slot options.
Chris Hanson [Tue, 8 Dec 1987 13:56:09 +0000 (13:56 +0000)]
Major redesign of front end of compiler. Continuations are now
modeled more exactly by means of a CPS-style analysis. Poppers have
been flushed in favor of dynamic links, and optimizations have been
added that eliminate the use of static and dynamic links in many
cases.
Chris Hanson [Mon, 7 Dec 1987 10:38:16 +0000 (10:38 +0000)]
Adjust documentation to reflect behavior on older releases of Scheme.
Chris Hanson [Mon, 7 Dec 1987 10:23:15 +0000 (10:23 +0000)]
Minor tweaks.
Chris Hanson [Mon, 7 Dec 1987 09:59:01 +0000 (09:59 +0000)]
Add command to select the process buffer automatically.
Chris Hanson [Mon, 7 Dec 1987 09:42:13 +0000 (09:42 +0000)]
Improve documentation substantially. Add a message which is displayed
at the start of the Scheme process to tell novices what to do. This
can be disabled by setting it to the empty string. Change the
handling of the keymaps so that they do not inherit. Implement a
command to signal the interpreter to proceed from a breakpoint.
Change the names of the major modes to be more systematic.
Chris Hanson [Mon, 7 Dec 1987 09:38:00 +0000 (09:38 +0000)]
Change documentation for scheme-mode to indicate extra stuff for
controlling the inferior process. Undo some earlier organizational
changes because xscheme no longer uses the hooks that were provided.
Chris Hanson [Mon, 7 Dec 1987 04:47:23 +0000 (04:47 +0000)]
Add variable `xscheme-allow-pipelined-evaluation' to control whether
errors are signalled when attempting to overlap evaluations. By
default, such pipelining is allowed. Change `xscheme-message' so that
it writes a message to in the Scheme process buffer and echoes in the
minibuffer much the same way that values are displayed.
Chris Hanson [Mon, 7 Dec 1987 02:39:58 +0000 (02:39 +0000)]
Add `examples' directory to distribution.
Chris Hanson [Sat, 5 Dec 1987 19:56:04 +0000 (19:56 +0000)]
Create third keymap which is exclusively for Scheme process buffer in
REP mode. Cause all three keymaps to inherit dynamically. Fix bug in
which value of evaluation was not shown in message area when the
Scheme process buffer was visible but not its output mark. Change
process runlight and mode strings so that they appear only in Scheme
buffers.
Chris Hanson [Sat, 5 Dec 1987 17:27:18 +0000 (17:27 +0000)]
*** empty log message ***
Chris Hanson [Sat, 5 Dec 1987 17:02:07 +0000 (17:02 +0000)]
Change Emacs interface to have special mode for `debug' and `where'.
Chris Hanson [Sat, 5 Dec 1987 16:40:57 +0000 (16:40 +0000)]
Change Emacs interface to have special mode for `debug' and `where'.
Guillermo J. Rozas [Fri, 4 Dec 1987 22:20:47 +0000 (22:20 +0000)]
Some changes to make calling primitives from compiled code cheaper:
- Primitives back out in the interpreter, rather than directly.
- A table with the arity in bytes has been added to usrdef.c
- Primitive objects have two fields: a table index for invocation,
and a virtual number for bookkeeping purposes. The table index is
always valid, even for unimplemented primitives. In this case it
points to a procedure which causes an UNIMPLEMENTE-PRIMITIVE error
when invoked. The back out mechanism takes care
Chris Hanson [Fri, 4 Dec 1987 20:35:52 +0000 (20:35 +0000)]
Major redesign of front end of compiler. Continuations are now
modeled more exactly by means of a CPS-style analysis. Poppers have
been flushed in favor of dynamic links, and optimizations have been
added that eliminate the use of static and dynamic links in many
cases.
Chris Hanson [Fri, 4 Dec 1987 20:18:28 +0000 (20:18 +0000)]
Major redesign of front end of compiler. Continuations are now
modeled more exactly by means of a CPS-style analysis. Poppers have
been flushed in favor of dynamic links, and optimizations have been
added that eliminate the use of static and dynamic links in many
cases.
Chris Hanson [Fri, 4 Dec 1987 20:05:24 +0000 (20:05 +0000)]
Major redesign of front end of compiler. Continuations are now
modeled more exactly by means of a CPS-style analysis. Poppers have
been flushed in favor of dynamic links, and optimizations have been
added that eliminate the use of static and dynamic links in many
cases.
Chris Hanson [Fri, 4 Dec 1987 19:28:21 +0000 (19:28 +0000)]
Major redesign of front end of compiler. Continuations are now
modeled more exactly by means of a CPS-style analysis. Poppers have
been flushed in favor of dynamic links, and optimizations have been
added that eliminate the use of static and dynamic links in many
cases.
Chris Hanson [Fri, 4 Dec 1987 19:24:45 +0000 (19:24 +0000)]
Change `else' to `t' in final clause of cond.
Chris Hanson [Fri, 4 Dec 1987 19:23:42 +0000 (19:23 +0000)]
*** empty log message ***
Chris Hanson [Fri, 4 Dec 1987 19:18:26 +0000 (19:18 +0000)]
*** empty log message ***
Chris Hanson [Fri, 4 Dec 1987 19:06:50 +0000 (19:06 +0000)]
Major redesign of front end of compiler. Continuations are now
modeled more exactly by means of a CPS-style analysis. Poppers have
been flushed in favor of dynamic links, and optimizations have been
added that eliminate the use of static and dynamic links in many
cases.
Chris Hanson [Fri, 4 Dec 1987 18:58:01 +0000 (18:58 +0000)]
Conditionalize `xscheme-send-interrupt' so that it sends the
terminating NUL only when synchronization is enabled.
Guillermo J. Rozas [Fri, 4 Dec 1987 11:56:07 +0000 (11:56 +0000)]
Patch because compiled-error-procedure is not a real primitive. It's
arity cannot be found.
Chris Hanson [Fri, 4 Dec 1987 10:07:31 +0000 (10:07 +0000)]
Initial revision
Guillermo J. Rozas [Fri, 4 Dec 1987 06:17:32 +0000 (06:17 +0000)]
Get the compiler ready for "lexpr" primitives.
Guillermo J. Rozas [Fri, 4 Dec 1987 05:16:15 +0000 (05:16 +0000)]
Makefile 9.59
Findprim.c 9.31
unix.c 9.45
cmp68020.s 9.63
Update Makefile to match the new C compiler.
Add missing declaration in Findprim.c noticed in VMS.
Invert name of cpp option in unix.c .
Fix restarting bugs in cmp68020.s .
Guillermo J. Rozas [Thu, 3 Dec 1987 19:30:52 +0000 (19:30 +0000)]
Add declaration for VMS.
Joe Marshall [Tue, 1 Dec 1987 16:34:04 +0000 (16:34 +0000)]
Fix end of SCAN-SEXPS-FORWARD to return a valid object.
Guillermo J. Rozas [Wed, 25 Nov 1987 01:39:12 +0000 (01:39 +0000)]
Add reg:lexpr-primitive-arity and entry:compiler-primitive-lexpr-apply
Joe Marshall [Tue, 24 Nov 1987 22:27:04 +0000 (22:27 +0000)]
Fix typo in PARSE-NAME that caused "." to parse into ".."
Guillermo J. Rozas [Tue, 24 Nov 1987 07:58:33 +0000 (07:58 +0000)]
Fix a couple of minor (although fatal) bugs:
- lseek was being invoked with arguments in the wrong order.
- table_end was being used instead of table_top in the call to
initialize_primitive_table.
Chris Hanson [Mon, 23 Nov 1987 18:32:32 +0000 (18:32 +0000)]
Conditionalize ^G synchronization code so that it is in effect only
for hp-ux.
Chris Hanson [Mon, 23 Nov 1987 17:35:16 +0000 (17:35 +0000)]
Change `OS_working_dir_pathname' to attempt to use `getcwd' first,
then default to the user's home directory if that fails.
Chris Hanson [Mon, 23 Nov 1987 06:46:36 +0000 (06:46 +0000)]
Previous changes introduced dependency on "string.h".
Chris Hanson [Mon, 23 Nov 1987 06:37:38 +0000 (06:37 +0000)]
Shorten names of some files to allow Emacs version numbers to be used
on ATT file systems. Add alternative primitive definition macro which
works correctly with Emacs tags tables.
Chris Hanson [Mon, 23 Nov 1987 05:18:09 +0000 (05:18 +0000)]
Shorten names of some files to allow Emacs version numbers to be used
on ATT file systems. Add alternative primitive definition macro which
works correctly with Emacs tags tables.
Chris Hanson [Mon, 23 Nov 1987 05:07:42 +0000 (05:07 +0000)]
Shorten names of some files to allow Emacs version numbers to be used
on ATT file systems. Add alternative primitive definition macro which
works correctly with Emacs tags tables.
`STRING->SYNTAX-ENTRY' was not allowing trailing spaces in the
argument.
`SCAN-SEXPS-FORWARD' was returning #F under some circumstances,
instead of a state vector.
Chris Hanson [Mon, 23 Nov 1987 04:57:02 +0000 (04:57 +0000)]
Shorten names of some files to allow Emacs version numbers to be used
on ATT file systems. Add alternative primitive definition macro which
works correctly with Emacs tags tables.
Chris Hanson [Mon, 23 Nov 1987 04:55:56 +0000 (04:55 +0000)]
Shorten names of some files to allow Emacs version numbers to be used
on ATT file systems.
Chris Hanson [Mon, 23 Nov 1987 04:55:17 +0000 (04:55 +0000)]
Add alternative primitive definition macro which works correctly with
Emacs tags tables.
Chris Hanson [Sun, 22 Nov 1987 22:17:39 +0000 (22:17 +0000)]
Remove code for `check-and-clean-up-interrupt-channel'. This has been
moved to two places: (1) the buffer-flushing code has moved into the
microcode, and (2) the interrupt acknowledgement has been moved to the
interrupt system.
Chris Hanson [Sun, 22 Nov 1987 22:16:08 +0000 (22:16 +0000)]
Change ^G interrupt handler to signal Emacs indicating that the
interrupt has been received.
Guillermo J. Rozas [Sat, 21 Nov 1987 18:47:39 +0000 (18:47 +0000)]
Some bug fixes by CPH.
Change to make primitives be renumbered by the fasloader.
When make is loaded it now asks whether it should be loaded compiled
or interpreted.
Guillermo J. Rozas [Sat, 21 Nov 1987 18:46:28 +0000 (18:46 +0000)]
Primitives are fecthed from the constant block, and passed as objects
to the appropriate microcode utility.
Guillermo J. Rozas [Sat, 21 Nov 1987 18:45:34 +0000 (18:45 +0000)]
Abstract the constant object to label procedures.
Guillermo J. Rozas [Sat, 21 Nov 1987 18:43:08 +0000 (18:43 +0000)]
Primitives are no longer considered non-pointers by the compiler.
They must appear in the constant block (rather than as immediate
constants in the instruction stream) so the fasloader can renumber
them.
Guillermo J. Rozas [Sat, 21 Nov 1987 18:06:51 +0000 (18:06 +0000)]
Rewrite sort!, uncomment it, and make sort handle vectors and do some
argument checking.
Guillermo J. Rozas [Sat, 21 Nov 1987 18:06:02 +0000 (18:06 +0000)]
Use number->string directly rather than write-to-string.
Panayotis Skordos [Fri, 20 Nov 1987 16:39:02 +0000 (16:39 +0000)]
Array-Make-Histogram was using (n-1) bins when asked for n-bin
histogram. Fixed.
Guillermo J. Rozas [Fri, 20 Nov 1987 08:21:12 +0000 (08:21 +0000)]
1) The version of memtop used by compiled code was being set to the
opposite value from that desired.
2) Eliminate all remaining uses of Request_Interrupt .
3) Clean up the eventual pushing stuff in interpret.c .
4) Fix a potential stacklet bug in error-procedure.
5) Make the compiled code interface always update memtop on interrupts
or gc.
6) Eliminate some code in non-stacklet version in interpret.c
7) Bintopsb and Psbtobin have been updated to handle compiled code.
Chris Hanson [Wed, 18 Nov 1987 22:32:07 +0000 (22:32 +0000)]
Fix bug in rule: target register being allocated BEFORE deletion of
dead registers rather than AFTER.
Guillermo J. Rozas [Wed, 18 Nov 1987 19:31:34 +0000 (19:31 +0000)]
Some changes for primitives accessed specially from compiled code
(arithmetic).
Guillermo J. Rozas [Wed, 18 Nov 1987 00:09:22 +0000 (00:09 +0000)]
Allow #T as a parameter make tohe microcode version of
make-primitive-procedure.
Guillermo J. Rozas [Tue, 17 Nov 1987 20:12:41 +0000 (20:12 +0000)]
There is now a single kind of primitive. Both mechanisms have been
merged.
Guillermo J. Rozas [Tue, 17 Nov 1987 19:47:34 +0000 (19:47 +0000)]
Forgot back-slashes in a C preprocessor macro.
Guillermo J. Rozas [Tue, 17 Nov 1987 18:26:12 +0000 (18:26 +0000)]
Initial revision
Guillermo J. Rozas [Tue, 17 Nov 1987 08:21:49 +0000 (08:21 +0000)]
1) There is now only one kind of primitive. External primitives have
disappeared, and "user" primitives have the same status as "built-in"
primitives.
2) bin files only contain those primitives actually referenced in the
file.
3) Strings now always use 32 bit counts.
4) Interrupt code and mask manipulation has been rewritten.
5) Findprim outputs the list of primitives sorted alphabetically by
the linkage name. This is used to advantage by the primitive
searching mechanism, which now uses binary sear
Guillermo J. Rozas [Tue, 17 Nov 1987 07:56:57 +0000 (07:56 +0000)]
Initial revision
Chris Hanson [Tue, 17 Nov 1987 00:25:34 +0000 (00:25 +0000)]
Fix bug in `scan-defines' in which an open-block whose body was
another open-block was not being scanned correctly. This resulted in
`sf' creating weird output when there were declarations being passed
to the compiler, that subsequently confused the compiler into
signalling an error.
Chris Hanson [Mon, 9 Nov 1987 21:35:13 +0000 (21:35 +0000)]
Stupid typo.
Chris Hanson [Mon, 9 Nov 1987 21:26:16 +0000 (21:26 +0000)]
Update the compiler memtop register when clearing timer interrupt.
Chris Hanson [Wed, 4 Nov 1987 20:05:38 +0000 (20:05 +0000)]
Conditionalize `tbuffer' definition in "vms.c" by means of an explicit
switch. This definition does not appear to depend on the VMS version.
Shorten some names to 31 characters to make VMS compiler happy.
Chris Hanson [Wed, 4 Nov 1987 20:03:59 +0000 (20:03 +0000)]
Conditionalize `tbuffer' definition in "vms.c" by means of an explicit
switch. This definition does not appear to depend on the VMS version.
Chris Hanson [Wed, 4 Nov 1987 20:02:48 +0000 (20:02 +0000)]
Shorten names to 31 characters to make VMS compiler happy.
Chris Hanson [Mon, 2 Nov 1987 20:19:30 +0000 (20:19 +0000)]
When sending strings to the Scheme process, set the "previous send"
only if the Scheme process buffer is selected. Almost never do we
want to yank something that was sent from another buffer.
Guillermo J. Rozas [Wed, 28 Oct 1987 21:57:38 +0000 (21:57 +0000)]
Make_Prim_Exts does not need to be available to everyone.
Guillermo J. Rozas [Wed, 28 Oct 1987 18:42:53 +0000 (18:42 +0000)]
Fix a delcaration bug in SET-RUN-LIGHT!
Guillermo J. Rozas [Wed, 28 Oct 1987 18:31:11 +0000 (18:31 +0000)]
Fix a grouping (parenthesis) bug in cell?
Guillermo J. Rozas [Tue, 27 Oct 1987 23:13:41 +0000 (23:13 +0000)]
Make Findprim sort the entries using the scheme linkage name as the
key. This allows for faster lookup.
Joe Marshall [Tue, 27 Oct 1987 18:00:24 +0000 (18:00 +0000)]
initial revision
Panayotis Skordos [Sat, 24 Oct 1987 09:42:18 +0000 (09:42 +0000)]
Added array-unary-function! making available (for arrays) all HPUX
math functions.
Panayotis Skordos [Wed, 21 Oct 1987 03:44:33 +0000 (03:44 +0000)]
Fixed image-make-ring (typo in argument-range-checking).
Panayotis Skordos [Mon, 19 Oct 1987 20:51:06 +0000 (20:51 +0000)]
Rewrote some comments and trivia, and moved/added some macros for
arrays.
Panayotis Skordos [Mon, 19 Oct 1987 20:46:14 +0000 (20:46 +0000)]
Added array-division, rewrote some comments and trivia, and moved some
macros to array.h
Chris Hanson [Mon, 19 Oct 1987 19:44:09 +0000 (19:44 +0000)]
Initial revision