[squeak-dev] The Inbox: Compiler-nice.280.mcz

tim Rowledge tim at rowledge.org
Tue Feb 25 22:35:14 UTC 2014


On 25-02-2014, at 12:01 PM, Tobias Pape <Das.Linux at gmx.de> wrote:

> On 25.02.2014, at 20:52, karl ramberg <karlramberg at gmail.com> wrote:
> 
>> control + up arrow ?
> 
> Control should be reserved for controlling stuff, 
> you would run into a lot of key-clashes on both, linux and osx (that I know of)
> but
> 	alt + up
> should be decent :)
> We can then think about alt-left for <- (aka := ) ;)

Y’see this is where it all gets silly. At some point you have to trade; you can have nice clear easy to explain or you can have complicated unintelligible and pointless. If you want the latter, go play with C++.

If we use some form of up-arrow glyph, whether plain old ascii caret or unicode +2191, then we need a sensible way to type it on typical keyboards. Anyone thinking that I will happily go all emacs and type ctl-alt-meta2-lshift-stallman-cursor-up is going to be disappointed. And deaf in one ear after I finish shouting at them…. Similarly for whatever assignment symbol one chose - I really dislike the := pascal nonsense - we need a convenient keypress. I say stick with shift-^ and shift-_ and accept that they are removed from general character usage.

Either we have single symbols for these two rather important syntactical elements and accept that this takes out of circulation for general character usage, or we have to do the pascal thing and use long winded nonsense; want your code to look like 

abstractBytecodeMessagesFrom: startpc to: endpc do: aBlock
	"Evaluate aBlock with the sequence of abstract bytecodes from startpc through endpc in the receiver"
	TEMP-DCL scanner
	scanner := InstructionStream new method: self pc: startpc.
	BEGIN-BLOCK scanner pc <= endpc END_BLOCK whileTrue:
		BEGIN-BLOCK
			BEGIN-BLOCK
				scanner interpretNextInstructionFor: nil
			END_BLOCK
			on: MessageNotUnderstood
			do: BEGIN-BLOCK
					TEMP-DCL ex 
					aBlock value: ex message
				END_BLOCK
			END_BLOCK
Hmm? Not my idea of nice. And besides, you could use *exactly the same argument* about ‘why not use all characters in names’ to demand to be allowed to use BEGIN-BLOCK as a variable name.

So to (mis)quote Zaphod, “ten out of ten for cleverness, minus several million for style"

tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Never write software that patronizes the user.




More information about the Squeak-dev mailing list