Proposal 2: Exceptions and @nogc

Walter Bright via Digitalmars-d digitalmars-d at puremagic.com
Fri Apr 14 16:29:12 PDT 2017


On 4/14/2017 3:41 PM, Timon Gehr wrote:
> Haskell does not do that. Why do you think it does?

Do what? I did not mention Haskell.

>> Back in the 80's, like everyone else, I went about creating a GUI user
>> interface library. I discovered something interesting - what is
>> orthogonal and consistent to a computer is anything but when dealing
>> with people. What people view as orthogonal and consistent is a rat's
>> nest of exceptions in the code to implement it. This is what makes a
>> user interface library fiendishly difficult to pull off.
>> ...
>
> Would you mind sharing an example?

It was 30 years ago. I don't remember specifics, but I can think of one - the 
tab key. It means different things depending on what box you're in. Some more 
thoughts - is a box in a fixed position, or is it movable? Is a box 
user-resizeable or not? Is the size of a box determined by its content do do you 
throw up scroll bars? or maybe relay out the contents? How do fonts affect this? 
How about screen resolution? Which parts of a box should be selectable with cut 
operations and which not? It just goes on and on.

There's the famous Windows 'start' button which you click on to turn the 
computer off. Of course, it is consistent from a programming point of view, 
because it starts the shutdown program.

In any case, look at English. It is not remotely consistent, and drives 
programmers to fits trying to parse it. But people find it intuitive.



More information about the Digitalmars-d mailing list