[Haskell-i18n] Unicode in source

Alastair Reid alastair@reid-consulting-uk.ltd.uk
24 Aug 2002 15:00:32 +0100

> Oh I don't use layout, so this makes no difference to me. My blocks
> are explicitly and unambiguously marked with braces, and my
> declarations separated with semicolons. And my tabs are set to four,
> because the code looks nicer that way.

I don't think this discussion has any real bearing on
internationalization and nothing at all to do with what level of
indentation makes your code look nice.  It is only about how you
_encode_ sequences of spaces in files.

Suppose we were talking about C programs where the indentation doesn't
affect the compiler.  I can cope with whatever level of indentation
you choose and, if I modify the code I'll probably conform to your
indentation style (as you say, it's your code).  But what I can't cope
with is if I view your code and the indentation is all screwed up
because the encoding you use is different from mine.  

Removing the notion of layout from Haskell or requiring linebreaks at
certain places in the code might solve some internationalization
issues but it will not affect the fact that I can't make sense of code
that assumes tabstops of 2 until I normalize your code to match the
conventions used by my system so that I can take in the structure of
your code at a glance.

If people are to exchange Haskell code, they need to agree on the
encoding.  They can either choose an encoding which excludes tabstops
or they can agree on how big tabstops are.  A very poor third option
is for everyone to choose their own size of tabstops.  [Please note
that I'm only talking about the encoding - how you much indentation
you use is up to you.]

Alastair Reid                 alastair@reid-consulting-uk.ltd.uk  
Reid Consulting (UK) Limited  http://www.reid-consulting-uk.ltd.uk/alastair/