[fpc-devel] Some compiler changes...

Michael Van Canneyt michael.vancanneyt at wisa.be
Tue Jan 23 11:56:18 CET 2007



On Tue, 23 Jan 2007, Thorsten Engler wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 
> 
> > So instead you'd put a & ?
> > 
> > Hardly more readable, I'd say. On the contrary. _ is used 
> > already, & is not.
> 
> And that's exactly the reason for using & and not _. It's not part of a
> valid identifier. 
> 
> If you look at:
> 
> &class
> 
> You see directly it's the escaped identifier "class". The & doesn't
> naturally read as part of the identifier.
> 
> If you look at:
> 
> _class
> 
> You read it as the identifier "_class". _ is a valid part of an identifier
> and people reading source are used to parsing it that way. 

But it is an identifier ?

> In addition,
> starting identifiers with an _ is very common to say "that's private, keep
> you fingers off". E.g. I see often enough in the compiler source currently
> that there is a public property and the private variable has the same name
> prefixed by _.

Not by me :)

> If you are overloading the meaning of identifiers starting
> with an underscore with both "that's private" and "bummer, we had a keyword
> conflict". Then you are causing confusion.

All the more reason for keeping away from all this and keeping the language
clean by clearly separating the identifiers from keywords, and not resorting 
to additional syntax to be able to use a keyword as an identifer ! :-)

But this is a discussion about principles. Neither expects to convince the
other, I think. At least I don't :-)

In each case, it seems a new compiler mode 'Chrome' is born. Well, it's
something that was probably bound to happen. One one hand I'm not happy
about it (it brings ugly things IMHO) but on the other hand, it's a plus 
for FPC, being able to compile chrome code...

Michael.



More information about the fpc-devel mailing list