Re: How many spaces a tab is worth Taylor Campbell 04 Dec 2003 22:43 UTC

On Thursday, Dec 4, 2003, at 15:33 US/Eastern, RedHog (Egil Möller)

> Dear Bear,
> I won't comment much on your mail, as it seems to mostly be a troll.

It's not a troll.  It's a straight-out statement of the feelings of
_many_ Schemers on this matter.

> This said, your comment on Schemes with this syntax enabled by default
> needs a remark; the syntax is constructed in such a way as to be
> backward compatible with the normal S-expression-based syntax -
> I-expressions could be enabled by deffault without breaking any but a
> very small set of old code.
> Specifically, the only code that would break, would be code that had
> two consecutive topplevel expressions, with the second line indented
> more, as in
> (define foo bar)
>    (define fie naja)
> To code like that clearly is not very usefull, and so isn't found in
> many progams (most progams I've seen have had all topplevel
> expressions non-indented).

What about files where the whole file is wrapped in some form, but
nothing has extra indentation?  This is found in a _lot_ of libraries
for PLT, for instance:

(module foo mzscheme
   (require bar)
   (provide baz)

;; The top-level forms in the module body have no indentation.
(define (mumble frotz) (garglemumph quux))
(define (baz ...) ...)


a) REQUIRE and PROVIDE have different indentations than DEFINE (this
    might not be as common).
b) The DEFINEs have the _same_ amount of indentation as MODULE (none),
    but they're _subforms_.
c) How do you tell where the close-paren is supposed to be?