Re: effects of identifier checking

Peter Gummer <[email protected]> Sat, 22 Oct 2005 08:54:19 +1000
Newsgroups gmane.comp.lang.eiffel.smalleiffel
Message-ID <[email protected]>
Dominique wrote:

> But, beside syntax error recovery, the most important point is
> to get better readability.
> The reader can now, at a glance, distinguish a class name from
> some feature name or local name.

Richard replied:

> I thought the syntax of Eiffel already ensured that this was the case?

Dominique wrote:

> No. This is why we are changing the rule now.

Pascal Poncin asked:

> This is astonishing - where is the Eiffel syntax ambigous in this
> way? Do you have an example for that?

I thought that Dominique was thinking of this sort of thing:

     feature DO_SOMETHING is
         local
             THING: parent
         do
             create {child} THING
             THING.DO_YOUR_THING
         end

Now this code is not going to confuse an Eiffel compiler, but the  
whacky capitalisation confuses me! I can read it, but my brain has to  
work harder to do so.

I've never seen Eiffel code that looked like this, however. A good  
IDE, like EiffelStudio, makes it difficult to abuse capitalisation,  
because whenever it auto-completes code for me it does so in  
accordance with the coding standard; I would have to painstakingly go  
back and retype the code in order to produce this example.

SmartEiffel is different, of course, because it isn't Eiffel any  
more, and because apparently many of its users don't have nice IDEs  
that enforce the coding standard.

- Peter Gummer