AW: Editor Tab Expansion

Ingo Wechsung
Thu, 5 Dec 2002 21:49:27 +0100

Thanks for the anserws.

So I will write the braces and semicolons. It's better anyway in my opinion.
I am not going to change my editing habits just to make hugs or ghc happy.
Wether spaces or tabs are better in source files is a matter of taste and
a language should not force me to use one or another. I can't help it, but
to make the meaning of a program depend on the questions whether there are
spaces or tabs in front of the line, and how many, seems silly to me. Sorry.

Hal Daume III wrote:

>so it needs to know where the boundaries between declarations are, hence
>the need for semicolons.  therefore, if you have embedded lets, you need
>braces to delimit them:

>  let x = let y = z
>              q = r
>          in  l
>  in  q

>would be ambiguous without layout/braces&semis.

I don't see that. Sure, you need semis. But then

	let x = let y=z; q=r; in l in q

or even

	let x = let y=z; q=r in l in q

is just as unambiguous as (hypothetical)

	( x = ( y=z; q=r ) l ) q

I mean, you can see "let" as opening brace and "in" as closing brace. So no
real need to write "let {" and "} in".