AW: AW: Editor Tab Expansion

Kevin S. Millikin kmillikin@atcorp.com
Fri, 6 Dec 2002 11:10:44 -0600


>>>>> "Ingo" == Ingo Wechsung <iw@contexo.de> writes:

    Ingo> Or, to turn it another way: "What you see is not necessarily
    Ingo> what you get".  This may be fine for ad hoc scripts that one
    Ingo> examines in hugs.

So is that the language's fault (because of what you get) or the
editor's fault (because of what you see)?

I'm guessing that what you see and what you get have *never* been
identical for you, but you didn't care much, because they were
indistinguishable.

Now, with Haskell, that difference has become significant.  And it's a
(perhaps minor) problem.  What is the cause of the problem?

1) Haskell makes the difference between what you see and what you get
   significant, it should not be that way
2) Your editor does not let you see what you're going to get, it
   should not be that way

If you see the source of the problem as 1, you will likely choose the
braces-semicolon route, or unfortunately (for you ;) ) not use
Haskell.  If you see it as 2, you will decide to reconfigure the
editor you use for programming so that what you see *is* what you
get.

    Ingo> They used to do so, since Jan 1 1970 00:00 GMT, without real
    Ingo> problems apart from pure formatting problems. The formatting
    Ingo> problems will not go away with the advent of Haskell. But 2
    Ingo> new problems suddenly arise: syntax error due to formatting
    Ingo> and formatting dependend semantic.

And in exchange, two old problems suddenly went away: syntax errors
due to incorrect bracketing or termination/separation, and formatting
that was *not* significant (code that was formatted as if it did one
thing but actually did another).
-- 
Kevin S. Millikin      Architecture Technology Corporation
Research Scientist     Specialists in Computer Architecture
(952)829-5864 x. 162   http://www.atcorp.com