[squeak-dev] A Mystery! self flag: #ThisMethodShouldNotBeThere. "sd"

Ken G. Brown kbrown at mac.com
Sun Mar 27 02:29:17 UTC 2011


sd is Stephane Ducasse
See for SqueakMap - All accounts sorted by initials
<http://map.squeak.org/accountsbyinitials>

Ken

At 6:32 PM -0700 3/26/11, Casey Ransberger apparently wrote:
>Ran into the below in Squeak 4.2. The method is present and almost unchanged in Cuis, along with the flag, and it's there in Pharo too. I'm curious if anyone knows S.D., or why S.D. thinks #ThisMethodShouldNotBeThere. Nothing like a good mystery! CC'd a couple folks who could be S.D. (Ray is sD on squeaksource.)
>
>I was tempted to simply append
>
>self flag: #OhReallyWhy? "cbr"
>
>...and ship it off to all three forks just to be a stinker, but I resolved to send this email instead;)
>
>PositionableStream>>fileInAnnouncing: announcement
>	"This is special for reading expressions from text that has been formatted
>	with exclamation delimitors. The expressions are read and passed to the
>	Compiler. Answer the result of compilation.  Put up a progress report with
>     the given announcement as the title."
>
>	| val |
>	announcement
>		displayProgressAt: Sensor cursorPoint
>		from: 0
>		to: self size
>		during:
>			[:bar |
>			[self atEnd] whileFalse:
>					[bar value: self position.
>					self skipSeparators.
>					
>					[ | chunk |
>					val := (self peekFor: $!)
>								ifTrue: [(Compiler evaluate: self nextChunk logged: false) scanFrom: self]
>								ifFalse:
>									[chunk := self nextChunk.
>									self checkForPreamble: chunk.
>									Compiler evaluate: chunk logged: true]]
>							on: InMidstOfFileinNotification
>							do: [:ex | ex resume: true].
>					self skipStyleChunk].
>			self close].
>	"Note:  The main purpose of this banner is to flush the changes file."
>	SmalltalkImage current logChange: '----End fileIn of ' , self name , '----'.
>	self flag: #ThisMethodShouldNotBeThere.	"sd"
>	Smalltalk forgetDoIts.
>	^val
>--
>Casey Ransberger




More information about the Squeak-dev mailing list