On Mar 24, 11 22:25, piotrek wrote:
On Thu, 24 Mar 2011 21:37:12 +0800, KennyTM~ wrote:
On Mar 24, 11 19:00, sclytrack wrote:
== Quote from piotrek (star...@tlen.pl)'s article
On Wed, 23 Mar 2011 23:17:32 +0100, Alvaro wrote:
D already has a long list of keywords, reserved words can't be used
as identifiers, which can be annoying. "body" in particular is a
common noun that programmers would gladly use as a variable name in
physics simulation, astronomy, mechanics, games, health, etc. I think
"body" can be removed from D with no harm, and with the benefit of
allowing the name as identifier.
yes, please
body is also a html tag
Cheers
Piotrek
Copied the following line from the Vala (=mostly reference counted
language) web page.
"It is possible to use a reserved keyword as identifier name by
prefixing it with the @ character. This character is not part of the
name. For example, you can name a method foreach by writing @foreach,
even though this is a reserved Vala keyword."
My body is hungry and starving.
How is this better than _body or body_?
I think "@" is a little bit nicer, but it doesn't change the situation at all .
body (if possible) shouldn't be a keyword.
Can anyone from the steering group state his opinion? :)
Cheers,
Piotrek
I agree body shouldn't be a keyword.
The @body solution doesn't work in D because:
1. @identifier is already reserved for user attributes (@safe, etc.)
2. What does @keyword.stringof (name of the variable) return?
if it returns "@keyword", then it is no different from using
"_keyword"
if it returns "keyword", you may break many string mixins.
3. @keyword exists in C# because the CLI isn't bound to any language,
so a keyword in C# may not be a keyword in other CLI languages, and that
would be got used. D shouldn't have this problem.
------
Speaking of which, how do we do
extern(C) void body();
?