TIP: Click on subject to list as thread! ANSI
echo: apple
to: comp.sys.apple2
from: mdj
date: 2009-03-06 04:31:08
subject: Re: A 21st Century Apple II?

On Mar 6, 6:13=A0pm, "Michael J. Mahon"  wrote:
> mdj wrote:
> > On Mar 5, 9:35 pm, apple2fr...{at}gmail.com wrote:
> >> On Mar 5, 3:18 pm, mdj  wrote:>
On Mar 5, 4:07 pm, =
apple2fr...{at}gmail.com wrote:
> > I write Python as my day job. The one thing I'll give it, is that you
> > never again have to read badly formatted code, since indentation is
> > used as the block delimiter instead of language symbols.
>
> I've always liked this approach to bracketing, since encountering
> it in the 1970s as the "off-side rule" (meaning that when indenting
> jumped back to the left ("off-side"), the intervening levels of
> structure were "closed").
>
> I've often wondered why it wasn't more common, since it makes the
> code "mean" exactly the way it looks.

It does work well. My only complaint is that larger functions can have
their behaviour shifted just by a bit of formatting that might be off-
screen, and still run OK, so the old delimeter model still has the
advantage of being absolute. On balance though, it's an excellent
idea, since I don't write functions that large ;-)

> I once "inherited" the maintenance of a text formatting tool written
> in Cobol (!), so I had to learn Cobol on the fly. =A0I was astonished
> to learn that in this "easy" language, the presence or absence of
> a single period in the middle of a nest of IF statements would
> completely alter the IF nesting without causing any syntax errors!
>
> What a violation of the "least surprise" principle, when a flyspeck
> can make one program read like another!

If only that story was less common ... :-S

Matt
--- SBBSecho 2.12-Win32
* Origin: Derby City Gateway (1:2320/0)
SEEN-BY: 10/1 3 34/999 120/228 123/500 128/2 140/1 222/2 226/0 236/150 249/303
SEEN-BY: 250/306 261/20 38 100 1404 1406 1410 1418 266/1413 280/1027 320/119
SEEN-BY: 393/11 396/45 633/260 267 712/848 800/432 801/161 189 2222/700
SEEN-BY: 2320/100 105 200 2905/0
@PATH: 2320/0 100 261/38 633/260 267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.