Requires microcode 11.52 or later.
authorChris Hanson <org/chris-hanson/cph>
Fri, 9 Nov 1990 08:44:55 +0000 (08:44 +0000)
committerChris Hanson <org/chris-hanson/cph>
Fri, 9 Nov 1990 08:44:55 +0000 (08:44 +0000)
commitce505a1e1ca7e64d4c1ce05a95f5a11c98a34fa2
tree81fe0516613cf7004274233ba7a5ab358eb5b55e
parentf7913696d84188624f5c67f34a8bd74253d80d61
Requires microcode 11.52 or later.

* Reimplement subprocess abstraction to match new microcode support.

* Implement socket abstraction.

* Create new "generic channel" input and output ports.  These share
  operations with file and console ports.

* Add `buffer-size' and `set-buffer-size' operations to file and
  console input ports.

* Add `eof?' operation to file input port.

* Add `channel' operation to file input and output ports.

* Change input and output buffer abstractions to permit a buffer-size
  of zero.  Input buffer treats this the same as a buffer size of one,
  since at least one character of buffering is needed to implement the
  peek-char operation.

* Change the peek-char and read-char input port operations to return
  an EOF object at end of file, or #F if no characters are available
  and the input port is set to non-blocking mode.  This is an
  incompatible change.

* Change the read-string input port operation to return an EOF object
  at end of file.  This is an incompatible change.

* Change the read-string and discard-chars input-port operations to
  for their input channels into blocking mode.

* Add new channel types: TCP-SERVER-SOCKET and DIRECTORY.

* Change the file-opening code to signal a range error if an attempt
  is made to open a channel of type DIRECTORY or UNKNOWN.

* Remove error check from `open-pty-master'; the primitive now takes
  care of this.

* Add new operations on PTY masters: pty-master-kill, pty-master-stop,
  pty-master-continue, pty-master-interrupt, and pty-master-quit.

* Change the input-buffer abstraction to handle non-blocking channels
  correctly.

* Use new microcode primitive `file-mod-time-indirect' to implement
  `file-modification-time'.
v7/src/runtime/input.scm
v7/src/runtime/io.scm
v7/src/runtime/make.scm
v7/src/runtime/parse.scm
v7/src/runtime/process.scm
v7/src/runtime/runtime.pkg
v7/src/runtime/strnin.scm
v7/src/runtime/unxprm.scm
v7/src/runtime/version.scm
v8/src/runtime/make.scm
v8/src/runtime/runtime.pkg