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) wrote: > 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?