Squeak 2.1 for UNIX?

Lex Spoon lex at cc.gatech.edu
Wed Aug 19 06:29:34 UTC 1998


R. A. Harmon writes:
 > At 05:12 PM 8/17/98 -0700, you wrote:
 > >R. A. Harmon writes:
 > > > At 04:48 PM 8/13/98 -0700, you wrote:
 > > > >R. A. Harmon writes:
 > [snip]
 > > > I've tried it and it is very well done.  I believe it only fixes some of the
 > > > areas of difficulty with like termination.  Below are a couple of examples
 > > > of areas it missed:
 > > > 
 > > > Behavior>>#compile:notifying:
 > > >         . . .
 > > >         withPreamble: [:f |
 > > >                 f cr;                   <- oops
 > [snip]
 > >
 > >Well #cr does a #nextPut:, and CrLfFileStream's nextPut: will
 > >automatically change CR's to whatever the local system's convention
 > >is.  So the only place in the system that knows any dirty work is
 > >going on, is in the guts of CrLfFileStream, and the rest of the system
 > >can just assume lines are CR delimitted.
 > [snip]
 > 
 > I finally studied the Squeak file system closely enough to follow the class
 > interaction, and found I needed to change the FileStream
 > class>>#concreteStream method to return CrLfFileStream instead of the
 > StandardFileStream class to make it the default.


Good point, you do have to do that if you want to use CrLfFileStream
ubiquitously.  It's easy to forget that there are people out there not 
using Squeak version Lex-current.  :)

On a similar note, if you have an old enough image, you might also
want to go through the FileDirectory methods like fileNamed:, and make
sure they reference FileStream instead of StandardFileStream--
otherwise file listings will still be messed up.



Lex





More information about the Squeak-dev mailing list