From: Matthew Flatt <mflatt@cs.utah.edu>
To: plt-scheme@web-ext.cs.brown.edu
Subject: [plt-scheme] 299.105
Date: Fri, 6 May 2005 14:00:09 -0600

The exp-tagged code in CVS for MzScheme and MrEd is now version 299.105.

 **********************************************************************
 *  IMPORTANT: TCP output ports are now block-buffered by default.    *
 *  This means that you need to add explicit `flush-output’ calls to  *
 *  most anything that uses TCP output. Alternately, set the buffer   *
 *  mode back to unbuffered with `file-stream-buffer-mode’.           *
 **********************************************************************

Changes:

 * `file-stream-buffer-mode’ works on more port types, including TCP
   ports and (potentially) custom ports.

 * Added yet another argument to `make-input-port’ and
   `make-output-port’ to implement getting/setting the port’s buffer
   mode.

 * Added `define-serializable-class[*]’ to MzLib’s "class.ss". It
   works much like `define-serializable-struct’, except that a class
   can implement the `externalizble<%>’ interface to customize the
   serialization. See the docs for various rules about when a class
   can be serialized.

 * Added an `inspect’ class to `class[*]’ for setting the class
   extension’s inspector (possibly #f).

 * Added `class/derived’ to MzLib’s "class.ss", which is useful for
   writing macros that expand into a `class’ form.

 * Added `define-struct/properties’ to MzLib’s "struct.ss". It’s like
   `define-struct’, except that you can attach properties to the
   structure type.

Matthew