Re: Machine epsilon: conclusion




"Richard Tobin" <richard@xxxxxxxxxxxxxxx> wrote in message
news:f65smj$153t$1@xxxxxxxxxxxxxxxxxxxxxxxxxx
In article <f65s3p$pvf$1@xxxxxxxxxxxx>, Army1987 <please.ask@xxxxxx>
wrote:

Add: "For the qfloat type, it invades the user name space, since I
was too lazy to call it _QFLT_EPSILON."

I'm not convinced about this. Using a leading underscore on names
intended for the user (rather than the implementation) is not helpful
to the user who wants to use the extensions. We don't see Posix using
underscored identifiers for everything. A better plan is to provide a
switch to disable it. This works perfectly for generic C code.

I agree. A good example is microsoft visualC++. They added keywords with
double underscores for .NET. But users complained so much about the ugliness
of the code that they switched to "normal" names in the next version


It might be better to have a single #define of an underscored name -
perhaps _LCC_EXTENSIONS - to control all lcc's extensions, as that
allows the user to turn it on or off for individual include files.

-- Richard
--
"Consideration shall be given to the need for as many as 32 characters
in some alphabets" - X3.4, 1963.


.



Relevant Pages

  • Re: Totally useless question
    ... >> programmers here are groaning about having to switch to this style ... no variables here have an underscore. ... Interesting because I used to be a whiz at typing them thanks to PowerBuilder 5. ...
    (microsoft.public.vb.general.discussion)
  • Re: Machine epsilon: conclusion
    ... was too lazy to call it _QFLT_EPSILON." ... Using a leading underscore on names ... to the user who wants to use the extensions. ... perhaps _LCC_EXTENSIONS - to control all lcc's extensions, ...
    (comp.lang.c)
  • Re: Why is everthing prefixed with "_"
    ... >> beginning with an underscore are reserved for the implementation. ... Identifiers beginning with an underscore followed by a ... implementation for use as a name in the global namespace." ... its extensions. ...
    (microsoft.public.vc.language)