Changes from Release 7.3 to 7.4
===============================

   This highlights some of the more important changes to Scheme since
the 7.3.1 release.  For complete details, see the `RCS.log' files in
the source code.

Changes to Scheme:

   * MIT Scheme is now supported under OS/2.

   * Illegally-placed internal definitions now signal an error.

   * Stream operations from the upcoming new edition of SICP are
     implemented.

   * The `load-option' procedure is now extensible, allowing users to
     add their own options to the database.

   * Daylight-savings-time information is now included in the decoded
     time data structure.

Changes to Edwin:

   * Cut and paste between Edwin and the system's clipboard (in X11, the
     "selection" mechanism) is now supported.  This support is directly
     integrated into the kill and yank commands: killing some text (e.g.
     `C-w', `C-k', `C-M-k') stores that text into the clipboard;
     yanking text (e.g. `C-y', `M-y') inserts text from the clipboard.
     This support is transparent in that it has no effect on Edwin
     except when some other program puts text into the clipboard.

   * Old RCS support has been replaced with VC ("Version Control") as
     in Emacs 19.  VC is significantly easier to use.  At present, VC
     supports only RCS.

   * New command: `M-x step-expression'; steps through the evaluation of
     a Scheme expression.

   * New command: `M-x grep', as in Emacs.

   * RMAIL and Unix mail files are now stored in Unix text format,
     regardless of the underlying operating system.  This allows these
     files to be more easily transferred between operating systems.

   * The editor variable `evaluate-in-inferior-repl' now defaults to
     `#t'.

   * Customizable imaging of characters is now supported.  The
     per-buffer variable `char-image-strings' holds a vector of 256
     strings that determine how characters are displayed.  Using an
     approriate vector allows the use of fonts with extra characters,
     "hex" displays, compound characters for displaying ISO Latin text
     in plain ASCII, and lots of other tricks.

   * Dired's commands are now more like those in Emacs 19.

   * Dired mode is no longer case-sensitive.

   * Dired now supports marking of multiple files.  Many commands, such
     as `M', `C', and `R', now work on the marked files if there are
     any.

   * New command in Dired: `+' creates a new directory.

   * OS/2 and Unix only: Fetching mail from a POP server is now
     supported, using the `popclient' program as a subprocess.  Supports
     three different `popclient' password schemes: standard, Debian
     GNU/Linux, and Kerberos V4.  Do `M-x variable-apropos RET pop RET'
     to see the variables that control the use of the `popclient'
     program.

   * OS/2 and Unix only: Compressed files are now fully supported.
     Edwin can read, write, and append compressed files.  Methods are
     provided to support the `gzip' and `compress' compression
     programs, using the suffixes `.gz' and `.Z', respectively.  If
     Edwin is attempting to open a file that doesn't exist, but it sees
     what appears to be a compressed version of that file, it opens the
     compressed file instead.

   * OS/2 and Unix only: In Dired, `s' now toggles between alphabetic
     sorting and time sorting.

Changes Specific to Windows 3.1, Windows 95, and Windows NT:

   * Long filenames are now supported.

   * The network `\\HOST\DIRECTORY' notation is now supported.

   * Scheme no longer supports the `^Z' end-of-file convention for
     files.  A `^Z' appearing in a file is treated as an ordinary
     character, and output files do not have `^Z' placed at their end.

   * The runtime system now has better heuristics for determining the
     user name and home directory.

   * The catatonia timeout has been extended to 120 seconds -- much more
     reasonable on slow machines.

   * Window text color now defaults to the system default rather than to
     black.

   * The default window font family and size is now selectable by the
     environment variable `MITSCHEME_FONT'.

   * `process-time-clock' now returns the process time, rather than the
     real time, under NT or any variant of Win32 that supports
     `GetProcessTimes'.

   * A bug has been fixed in the directory reader in which the OS
     handle was never closed.  This was manifested under Windows 3.1 as
     Edwin being unable to do filename completion or file saving after
     32 handles were opened but never closed.

Changes Specific to Edwin under Windows:

   * File systems with either long or short file names are now
     supported.  Edwin modifies its behavior depending on the
     file-system type, for example, using Unix-style `.~N~' backup
     names with long files.

   * Multiple Edwin screens are now supported.

   * The handling of windows has been significantly improved; it is now
     faster and less buggy.

   * New Edwin commands include `M-x set-font', `M-x set-default-font',
     `M-x set-icon', `M-x set-foreground-color' and `M-x
     set-background-color'.

Changes Specific to OS/2 (since the 7.4.1 release):

   * The main console window now supports a Copy command.  Any text
     appearing on the window can be copied to the clipboard by marking
     it with the mouse and invoking the Copy command.

   * The main console window now has a menu bar, which provides the
     following operations: Exit, Copy, Paste, Set font, and About.

   * The main console window now has a list of fonts that it tries to
     use to set the default font, rather than just `"4.System VIO"'.
     It tries these fonts in order until it finds one.  This allows
     Scheme to be used on systems that don't support the `System VIO'
     font, as is true of some non-US versions of OS/2.

   * Closing the main console window using the window Close command now
     asks whether you want to kill Scheme or just close the window and
     leave Scheme running; usually you will want the former.
     Previously, it did the latter without asking.

   * All windows created by Scheme now have icons to give them a
     distinctive appearance when minimized.

   * Compilation of the microcode is supported using IBM Visual Age C++,
     Watcom C/C++, or EMX/GCC.

   * Unix file systems are supported specially, e.g. Linux `ext2' or
     Unix NFS.  End-of-line translation is not done for files on such
     file systems, so that the files are read and written properly.

   * The network `\\HOST\DIRECTORY' notation is now supported.

Changes Specific to Edwin under OS/2:

   * The Close command on the window menu of an Edwin window now acts
     like `C-x C-c' if this is the only Edwin window for this process.

   * In Dired, `S' now toggles between showing and hiding system/hidden
     files; these files are initially hidden.

   * Dired has an `M' command to set the attributes of a file.  It
     prompts for an attribute string such as `+r' or `-h' and makes the
     corresponding change to the file's attributes.
