From: matthew@... Date: 2017-07-27T06:54:42+00:00 Subject: [ruby-core:82193] [Ruby trunk Bug#13770] Can't create valid Cyrillic-named class/module Issue #13770 has been updated by phluid61 (Matthew Kerwin). shyouhei (Shyouhei Urabe) wrote: > phluid61 (Matthew Kerwin) wrote: > > > > Isn't titlecase a mapping property, rather than an attribute? That is, how a character would be converted to titlecase is orthogonal to whether it's uppercase. > > Can I ask you whether U+01C8 is a valid Constant name or not in your opinion? and why? Oh, you're right, I had misread the documentation. I think that if Ruby accepts all *Lu* characters as constants, it could also accept all *Lt*. In the case of U+01C8 I'm not overly concerned because it's not common any more (but I think `��udevit` is just as valid as `Ljudevit`); however for U+01F2 it could be reasonable for someone in Macedonia to name a constant `��e`, for example. ---------------------------------------- Bug #13770: Can't create valid Cyrillic-named class/module https://bugs.ruby-lang.org/issues/13770#change-65961 * Author: sb (Sergey Borodanov) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux] * Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN ---------------------------------------- Can't create a valid Cyrillic-named class. If I have a file **������.rb**: ~~~ ruby # Content of ������.rb: class ������ def ���������������������������� "������������, ������!" end end ~~~ and do in **bash**: ~~~ ruby ������.rb ~~~ I get the error (**SyntaxError**): ~~~ ������.rb:1: class/module name must be CONSTANT ~~~ Same error with module creating and same behavior in **irb** (please, see attachment). At the same time Cyrillic-named constants and methods work fine. It is expected that creating Cyrillic-named class/modules should work without error. ---Files-------------------------------- Screenshot from 2017-07-26 19-08-14.png (64.2 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: