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


Groups > comp.lang.c > #19272

Re: What about namespaces ?

From 88888 Dihedral <dihedral88888@googlemail.com>
Newsgroups comp.lang.c
Subject Re: What about namespaces ?
Date 2012-04-03 06:49 -0700
Organization http://groups.google.com
Message-ID <9481328.80.1333460993743.JavaMail.geo-discussion-forums@pbcud3> (permalink)
References <jleflk$kv0$1@speranza.aioe.org>

Show all headers | View raw


Rui Maciel於 2012年4月3日星期二UTC+8下午5時25分10秒寫道:
> When a C program grows, the odds that two identifier names will clash will 
> increase.  So, unless the programmer has in place an effective policy to 
> name every identifier that is able to avoid any naming clash, including 
> thosed introduced by third-party code, the odds that this problem will 
> manifest itself will also become greater.
> 
> This problem isn't particularly hard to avoid.  A simple policy based on 
> adding a descriptive prefix to the identifier name tends to be enough for 
> most cases.  Even in corner cases, such as possible name clashes between 
> incompatible versions of the same library, it is possible to sidestep this 
> by adding a reference to the library version to the prefix being used.
> 
> Nonetheless, by relying on this method, identifier names tend to become a 
> bit verbose.  This, in itself, isn't a major problem, but it isn't very 
> helpful either.  After all, it tends to be preferable if it's possible to 
> call a function named do_stuff() instead of being forced to call another one 
> named package_name_version_library_task_do_stuff(), and long identifier 
> names tend to make some code constructs a bit hard to read.
> 
> A possible way to cut on verbose identifier names would be to implement a 
> system where these prefixes could be left implied by the programmer in such 
> a way that, in a given context, a call to do_stuff() could unambiguously be 
> interpreted as a call to package_name_version_library_task_do_stuff().  This 
> could, hypothetically, be accomplished by letting programmers specify 
> exactly, both in declarations and definitions, which group of identifiers 
> would share a specific naming prefix, and then also specify in which block 
> these naming prefixes could be left implied. 
> 
> What I've described is, in essence, the concept of namespaces, which has 
> been a part of other programming languages, such as C++, for a long time 
> now.
> 
> So, with this in mind, what are your thoughts on the idea of introducing 
> namespaces to the C programming language?  Would it be a bad idea? 
> 
> 
> Rui Maciel

I think one has to declare static variables in the file scope for those 
not to be exported and a package header for all extern variables in one's
organization of c files can remedy the problem. 

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


Thread

What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-03 10:25 +0100
  Re: What about namespaces ? "BartC" <bc@freeuk.com> - 2012-04-03 11:20 +0100
    Re: What about namespaces ? Ian Collins <ian-news@hotmail.com> - 2012-04-03 22:29 +1200
      Re: What about namespaces ? "BartC" <bc@freeuk.com> - 2012-04-03 12:38 +0100
    Re: What about namespaces ? Keith Thompson <kst-u@mib.org> - 2012-04-03 12:19 -0700
      Re: What about namespaces ? "BartC" <bc@freeuk.com> - 2012-04-03 20:57 +0100
  Re: What about namespaces ? gordonb.9sh3w@burditt.org (Gordon Burditt) - 2012-04-03 06:23 -0500
    Re: What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-03 19:54 +0100
      Re: What about namespaces ? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-04-03 12:18 -0700
        Re: What about namespaces ? jgharston <jgh@arcade.demon.co.uk> - 2012-04-03 13:09 -0700
    Re: What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-03 19:54 +0100
    Re: What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-03 19:54 +0100
  Re: What about namespaces ? 88888 Dihedral <dihedral88888@googlemail.com> - 2012-04-03 06:49 -0700
  Re: What about namespaces ? Robert Wessel <robertwessel2@yahoo.com> - 2012-04-03 11:10 -0500
    Re: What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-03 20:12 +0100
    Re: What about namespaces ? Ian Collins <ian-news@hotmail.com> - 2012-04-04 07:20 +1200
  Re: What about namespaces ? Fritz Wuehler <fritz@spamexpire-201204.rodent.frell.theremailer.net> - 2012-04-03 20:58 +0200
    Re: What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-03 21:05 +0100
      Re: What about namespaces ? "BartC" <bc@freeuk.com> - 2012-04-03 21:33 +0100
  Re: What about namespaces ? William Ahern <william@wilbur.25thandClement.com> - 2012-04-03 12:05 -0700
    Re: What about namespaces ? James Kuyper <jameskuyper@verizon.net> - 2012-04-03 15:50 -0400
    Re: What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-03 21:27 +0100
      Re: What about namespaces ? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-04-03 14:40 -0700
    Re: What about namespaces ? jgk@panix.com (Joe keane) - 2012-04-11 20:56 +0000
      Re: What about namespaces ? Ben Pfaff <blp@cs.stanford.edu> - 2012-04-11 14:46 -0700
        Re: What about namespaces ? jgk@panix.com (Joe keane) - 2012-04-11 23:03 +0000
        Re: What about namespaces ? jgk@panix.com (Joe keane) - 2012-04-13 00:40 +0000
          Re: What about namespaces ? Keith Thompson <kst-u@mib.org> - 2012-04-12 18:56 -0700
            Re: What about namespaces ? "BartC" <bc@freeuk.com> - 2012-04-13 13:20 +0100
              Re: What about namespaces ? Keith Thompson <kst-u@mib.org> - 2012-04-13 13:43 -0700
            Re: What about namespaces ? jgk@panix.com (Joe keane) - 2012-04-15 16:46 +0000
              Re: What about namespaces ? Martin Ambuhl <mambuhl@earthlink.net> - 2012-04-21 04:38 -0400
                Re: What about namespaces ? "BartC" <bc@freeuk.com> - 2012-04-21 16:44 +0100
      Re: What about namespaces ? "BartC" <bc@freeuk.com> - 2012-04-11 23:01 +0100
        Re: What about namespaces ? jgk@panix.com (Joe keane) - 2012-04-13 21:04 +0000
      Re: What about namespaces ? lawrence.jones@siemens.com - 2012-04-11 22:09 -0400
        Re: What about namespaces ? Nomen Nescio <nobody@dizum.com> - 2012-04-12 10:55 +0200
  Re: What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-04 00:17 +0100
    Re: What about namespaces ? William Ahern <william@wilbur.25thandClement.com> - 2012-04-03 16:44 -0700
      Re: What about namespaces ? nick_keighley_nospam@hotmail.com - 2012-04-04 00:49 -0700
  Re: What about namespaces ? Ian Collins <ian-news@hotmail.com> - 2012-04-04 14:54 +1200
    Re: What about namespaces ? Ian Collins <ian-news@hotmail.com> - 2012-04-04 15:43 +1200
      Re: What about namespaces ? Ian Collins <ian-news@hotmail.com> - 2012-04-04 16:06 +1200
  Re: What about namespaces ? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-04-04 04:37 +0100
    Re: What about namespaces ? Kaz Kylheku <kaz@kylheku.com> - 2012-04-04 18:43 +0000
      Re: What about namespaces ? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-04-05 01:43 +0100
  Re: What about namespaces ? "io_x" <a@b.c.invalid> - 2012-04-04 09:32 +0200
  Re: What about namespaces ? Tim Rentsch <txr@alumni.caltech.edu> - 2012-04-05 11:22 -0700
    Re: What about namespaces ? Rui Maciel <rui.maciel@gmail.com> - 2012-04-05 21:04 +0100
    Re: What about namespaces ? Kaz Kylheku <kaz@kylheku.com> - 2012-04-06 01:10 +0000

csiph-web