Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #108462

Re: Variable naming issue

From David Brown <david.brown@hesbynett.no>
Newsgroups comp.lang.c
Subject Re: Variable naming issue
Date 2017-04-25 13:07 +0200
Organization A noiseless patient Spider
Message-ID <odnaf4$6gg$1@dont-email.me> (permalink)
References <daaca66f-c8ff-41f3-99b2-d4c457b96959@googlegroups.com> <YswLA.477560$UY3.417968@fx11.am4> <odmu6j$mg$1@dont-email.me> <OPELA.457019$5u1.273856@fx03.am4>

Show all headers | View raw


On 25/04/17 11:40, bartc wrote:
> On 25/04/2017 08:37, Noob wrote:
>> On 25/04/2017 02:09, bartc wrote:
>>
>>> It's silly really because it can be literally a one-line change in a
>>> compiler to allow $.
>>
>> Are you generating machine code or assembly?
> 
> Huh? We're talking about input source not output.
> 
> We're in the 21st century not back in the 70s where names were limited
> to 6 upper case characters (because of 'radix-50' or 'sixbit' or whatever).
> 
>> If the latter, did you write the assembler, or do you rely
>> on the system's assembler?
> 
> Let me reiterate, in either a compiler /or/ assembler, support for $ can
> be a one-line change from:
> 
>   ....
>   case 'y':
>   case 'z':
> 
> to:
> 
>   ....
>   case 'y':
>   case 'z':
>   case '$':
> 
> In the rare case of a compiler working with an existing assembler that
> doesn't support '$' (or any other character, eg. Unicode), 

What is it that you think is rare?  That compilers work with existing
assemblers?  Most compilers generate assembly outputs, and most make use
of existing assemblers.

Or do you think that it is rare for an assembler to use a dollar sign in
some special way that is incompatible (or at least inconvenient) with
using dollars in identifiers?

I know of assemblers that use $ to indicate local variables, assemblers
that use it for hex literals (rather than C's 0x), assemblers that use
it for register names, assemblers that use it for "current position" -
and assemblers that simply reject it as a letter.

> then it will
> need to devise some escape mechanism. Not take it out on the user by
> saying you can't do this because there might be the odd assembler out
> there that can't handle it.

There are /many/ assemblers out there.  Your experience is with a couple
of x86 tools and maybe a brief look at something for ARM - your
extrapolations of your narrow (albeit in-depth) experiences as though
they were general rules, makes you look silly.

Yes, an escape mechanism of some sort /could/ be used - but there are no
forms of reserved identifiers that could sensibly be used, so there is
nothing to stop conflict with other valid identifiers.  You would have
to have a silly long escape sequence - and that could conflict with
length restrictions on assembly identifiers, and it would certainly look
strange to anyone examining listing files, linker map files, etc., or
using a debugger.  And of course everything would fail if you tried to
link these symbols with code generated with other tools.

You will probably also find that using a $ in identifiers causes
challenges or incompatibilities with all sorts of other tools, such as
IDE's with syntax highlighting, tag generators, automatic code
documenters, etc.

And thus today's situation - that some compilers reject $ altogether,
and that others accept it if the backend assembler is happy, is the best
that can be done.  This is for practical and sensible reasons - not
because compiler writers are lazy, stupid, stuck in the 70's, or did not
think of adding an extra "case" line to their software.

> 
>> Maybe you shouldn't assume you're smarter than everyone else.
>> (Or maybe I should drop you back in my KF, most of your posts
>> just raise my blood pressure.)
> 
> Some posts raise /mine/ notably ones from G Owen. But those are
> sustained personal insults.
> 
> 

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Variable naming issue maximus fl <ajones2600@gmail.com> - 2017-04-24 16:17 -0700
  Re: Variable naming issue David Kleinecke <dkleinecke@gmail.com> - 2017-04-24 16:28 -0700
  Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-25 01:09 +0100
    Re: Variable naming issue Noob <root@127.0.0.1> - 2017-04-25 09:37 +0200
      Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-25 10:40 +0100
        Re: Variable naming issue David Brown <david.brown@hesbynett.no> - 2017-04-25 13:07 +0200
          Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-25 13:24 +0100
            Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-25 13:27 +0100
            Re: Variable naming issue Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-04-25 13:59 +0100
              Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-25 14:20 +0100
                Re: Variable naming issue Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-04-25 14:27 +0100
                Re: Variable naming issue Keith Thompson <kst-u@mib.org> - 2017-04-25 11:52 -0700
                Re: Variable naming issue Malcolm McLean <malcolm.mclean5@btinternet.com> - 2017-04-25 13:40 -0700
                Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-25 22:14 +0100
                Re: Variable naming issue David Brown <david.brown@hesbynett.no> - 2017-04-26 00:16 +0200
                Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-26 00:13 +0100
                Re: Variable naming issue David Brown <david.brown@hesbynett.no> - 2017-04-26 10:10 +0200
                Re: Variable naming issue supercat@casperkitty.com - 2017-04-25 14:33 -0700
                Re: Variable naming issue Malcolm McLean <malcolm.mclean5@btinternet.com> - 2017-04-25 06:39 -0700
                Re: Variable naming issue Robert Wessel <robertwessel2@yahoo.com> - 2017-04-25 09:35 -0500
              Re: Variable naming issue Gareth Owen <gwowen@gmail.com> - 2017-04-25 18:39 +0100
                Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-25 18:49 +0100
                Re: Variable naming issue David Kleinecke <dkleinecke@gmail.com> - 2017-04-25 11:19 -0700
                Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-25 19:31 +0100
                Re: Variable naming issue Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-04-25 23:36 +0100
                Re: Variable naming issue David Kleinecke <dkleinecke@gmail.com> - 2017-04-25 17:04 -0700
                Re: Variable naming issue Robert Wessel <robertwessel2@yahoo.com> - 2017-04-26 00:32 -0500
            Re: Variable naming issue David Brown <david.brown@hesbynett.no> - 2017-04-25 16:02 +0200
            Re: Variable naming issue Tim Rentsch <txr@alumni.caltech.edu> - 2017-05-02 05:25 -0700
              Re: Variable naming issue supercat@casperkitty.com - 2017-05-02 10:04 -0700
                Re: Variable naming issue Tim Rentsch <txr@alumni.caltech.edu> - 2017-05-05 03:06 -0700
          Re: Variable naming issue supercat@casperkitty.com - 2017-04-25 07:12 -0700
          Re: Variable naming issue Robert Wessel <robertwessel2@yahoo.com> - 2017-04-25 09:48 -0500
            Re: Variable naming issue Robert Wessel <robertwessel2@yahoo.com> - 2017-04-25 09:52 -0500
        Re: Variable naming issue Noob <root@127.0.0.1> - 2017-04-26 08:46 +0200
          Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-26 11:46 +0100
          Re: Variable naming issue bartc <bc@freeuk.com> - 2017-04-26 12:00 +0100
        Re: Variable naming issue gordonb.o1c18@burditt.org (Gordon Burditt) - 2017-05-07 22:25 -0500
          Re: Variable naming issue bartc <bc@freeuk.com> - 2017-05-08 10:35 +0100
            Re: Variable naming issue bartc <bc@freeuk.com> - 2017-05-08 10:53 +0100
              Re: Variable naming issue David Kleinecke <dkleinecke@gmail.com> - 2017-05-08 11:47 -0700
                Re: Variable naming issue bartc <bc@freeuk.com> - 2017-05-08 19:59 +0100
      Re: Variable naming issue gazelle@shell.xmission.com (Kenny McCormack) - 2017-04-25 10:43 +0000
    Re: Variable naming issue Robert Wessel <robertwessel2@yahoo.com> - 2017-04-25 09:33 -0500
  Re: Variable naming issue Keith Thompson <kst-u@mib.org> - 2017-04-24 17:26 -0700
    Re: Variable naming issue maximus fl <ajones2600@gmail.com> - 2017-04-24 18:18 -0700
  Re: Variable naming issue scott@slp53.sl.home (Scott Lurndal) - 2017-04-25 14:48 +0000

csiph-web