[Ironruby-core] Lowercase classname
mail at tinco.nl
Sat Nov 20 17:27:04 EST 2010
Hey guys.. it's very nice that you all say the same thing, but it
doesn't work in IronRuby 1.1.1:
>>> Object.const_get "foo"
(ir):1:in `const_get': `foo' is not allowed as a constant name (NameError)
If this would've worked then I wouldn't have had to ask the question
in the first place :)
On Fri, Nov 19, 2010 at 6:43 PM, Mike Moore <blowmage at gmail.com> wrote:
> For some reason Jimmy's reply didn't show up in my inbox until I sent my
> reply. Sorry for the duplicate explanation.
> On Fri, Nov 19, 2010 at 9:00 AM, Jimmy Schementi <jimmy at schementi.com>
>> Not sure I follow. IronRuby does support this via DotNetClassName =
>> Object.const_get("lower_case_dotnet_class_name"), so you don't need to
>> change your code. This is an issue because of Ruby itself; classes are
>> required to be Ruby constants, which syntactically can only start with an
>> upper-case letter. Since IronRuby is syntactically equivalent to Ruby, we
>> will not remove this rule. Instead, we either suggest changing your C# code,
>> or if you can't, use const_get. WRT your IronPython comment, it doesn't have
>> this issue because the Python language doesn't enforce a naming scheme on
>> type names.
>> On Fri, Nov 19, 2010 at 10:48 AM, andrew Wilson <a.wilson82 at gmail.com>
>>> This is only an acceptable solution if the user has the source code and
>>> is capable of modifying it. For how I test things with IronRuby, this isn't
>>> always possible. Seems odd to me that one of the most flexible language I
>>> know of can't read/integrate with another language due to code not following
>>> a rigid structure.
>>> Doesn't IronPython allow for this? I was fairly sure I could import
>>> non-standard .Net convention based code into it.
>>> On Fri, Nov 19, 2010 at 2:41 PM, Shay Friedman
>>> <shay.friedman at gmail.com>wrote:
>>> > Look here:
>>> > > http://www.ironshay.com/post/Working-with-NET-Lowercase-Namespaces-and-Classes-in-IronRuby.aspx
>>> > <http://www.ironshay.com/post/Working-with-NET-Lowercase-Namespaces-and-Classes-in-IronRuby.aspx>
>>> > Shay.
>>> Excellent solution. I mean, really, all the C# classes should start with
>>> uppercase letter, thats basically a standard, therefore this should be
>>> only solution and I don't see no need to actually hack this otherwise
>>> “If I had six hours to chop down a tree, I’d spend the first four of them
>>> sharpening my axe”.
>>> -Abraham Lincoln
>>> Ironruby-core mailing list
>>> Ironruby-core at rubyforge.org
>> Ironruby-core mailing list
>> Ironruby-core at rubyforge.org
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
More information about the Ironruby-core