A still sensible question about _ and :=

Jarvis, Robert P. (Contingent) Jarvisb at timken.com
Mon Apr 23 18:39:22 UTC 2001


If '<-' was to become the assignment operator how would the potential
ambiguity be handled?  I'm thinking that existing legal code, such as

	i<-1 ifTrue: [...whatever...]

	(read the above as "One less than negative one ifTrue: [...]")

would be broken (read as "i assigned value of 1 ifTrue: Kaboom! Receiver of
#ifTrue must be Boolean").  I ask this not to be a smartass but as someone
who knows little about language translation issues, or how such things are
handled today.

FWIW I like '<-' much better than ':='.

Bob Jarvis
Compuware @ Timken

> -----Original Message-----
> From: Dan Ingalls [mailto:Dan.Ingalls at disney.com]
> Sent: Monday, April 23, 2001 1:35 PM
> To: Andrew P. Black
> Subject: Re: A still sensible question about _ and :=
> 
> 
> Without committing to your proposal (steps 4 and 5 are 
> significant and not without side-effects), I have one related 
> suggestion:
> 
> A possible simplification would be to use '<-' (the same two 
> characters everyone uses in email) as the internal alternate 
> to :=.  This would end all font concerns, and thus eliminate 
> steps 1 and 3 of your proposal.
> 
> It's possible some apps already use '<-' as a binary 
> operator.  That could be a problem.
> 
> Except for that possible problem, it's probably easier to 
> make compatibility packages for other ST's to allow '<-' than 
> to do steps 4 and 5 for Squeak.  (Squeak meets ANSI ;-).
> 
> 	- Dan
> ----------------------------
> >I think that we should
> >
> >(1) move the arrow glyph to an unused location in the character set 
> >(there are lots of them, lets say Character value: 31 as a concrete 
> >suggestion).
> >
> >(2) Put underscore back in its proper place.
> >
> >(3) Fix the fonts so that the arrow glyph actually prints as 
> an arrow 
> >glyph in all sizes, and underscore prints as an underscore.  This 
> >probably requires some trickery in the font import stuff; I'm 
> >waffling here because I know nothing about it.
> >
> >(4) Change the fileout code so that := is always used.
> >
> >(5) Possibly, add preferences to the prettyprinter and the compiler 
> >so that users can look at whichever of := or arrow they prefer.  (I 
> >strongly prefer arrow, by the way, but that is not the point.)
> >
> >(6) Possibly, add preferences so that one can have the _ key insert 
> >an arrow, as now, and <ctrl -> inserts a _, or vice versa.  Or 
> >ctrl-g.  Or whatever.  We can all do our own customization on that 
> >one, I would guess.
> >
> >What are the benefits of all of this work?  (The work is in making 
> >the change happen without us all having to "get off the bus"). Quite 
> >a number, actually.
> >
> >First, file names and text files containing _ will print correctly 
> >inside Squeak.  Second, Squeak fileouts that I include in email and 
> >on web pages will print correctly, without my painstakingly 
> having to 
> >replace all of the _ with little arrow.gif pictures!  Third, we will 
> >be able to interchange code with other Smalltalks more easily -- at 
> >least they would be able to file Squeak in and massage it into a 
> >working state.  Fourth, when I make the font size larger to give a 
> >demo, the code will still have arrows in it on the screen, not 
> >underscores, which are pretty hard to explain to a not always 
> >sympathetic audience.
> >
> >I think that appearances are important, and this has been 
> bugging me recently.
> >
> >	Andrew
> 
> 
> 





More information about the Squeak-dev mailing list