Basicでは、BASIC時代からずっとですが、アルファベットの大文字と小文字を区別しないことは皆さまもご存知かと思われます。実は、大文字小文字だけじゃなくて、半角全角も区別しないという。Studio上ではちゃんと、Moduleとかの部分が青色(キーワードの色)で表示されます。Studio上では、全角文字でキーワードを打つと、自動補完で打ったそばから半角CamelCaseに変換されていくんで、自動補完に直されるたびにCtrl+Zで元に戻したりしないとこのソースコードを作れなかったりはするんですが。Roslynでもいまだこの仕様これ、おそらくは初期のVBで日本人が出した要望を真に受けて実装しちゃったものだと思うんですが...何が恐ろしいって、その時代にはUnicodeがないこと。Shift_JIS、つまり、日本語ロケールでしか扱えない(後々には韓国語や中国語の文字コードにも全角英数入ってるみたいですけど、最初に作った戦犯は日本のはず?たぶん)文字に対する特殊対応入れさせるとか、当時の日本どれだけわがまま言ってるんだと...その時代からの名残のコードなのか、現在のRoslynのVBのスキャナー(構文解析で、単語を切り出す部分)には以下のようなコードが含まれています。エスケープシーケンスで\uFF10とか書ける。半角スペース)を足して作ってるという。#6552「"x"wみたいに、文字リテラルにw語尾つけて全角文字を作れたら便利じゃない?」............おい、バカ、やめろ。Char」って言い方が悪く、他の人「UTF16に収まらない文字のこと?可変長バイトだし難しくない?結合文字のせいで大変よ。提案者「日中韓の人なら便利なんじゃないの?たぶん」おい、バカ、マジでやめろ。いうことで、この流れに気づいた瞬間、「あらゆる意味でそんなものほしくない。全角英数は恐ろしくクソな負の遺産。多くの日本人開発者が憎んでる。」とコメントをつけておきました。6以前、あるいはVBAとかVBScriptとかからの習慣なわけで、たぶん20年越しの呪いですよ、これ。Unicodeがなかった時代に「大文字小文字を区別しないんだったら、全角半角も区別しないべきじゃないか」とか言い出した人がいての結果(のはず。こんな、(キーワードに全角文字使えるとか)今となっては知ってる人すら減ってるご時世に、特殊対応のためにVBのスキャナーに負担をかけて、全世界の皆様にご迷惑かけて大変申し訳ない気分。文字のビット数問題まあ途中の議論で出ていた、.NETのcharで扱えない文字、16ビットに収まらないやつに対する操作は確かにほしかったりはしますが....NETで文字列が内部的にUTF16なの、.NETの登場時期(16ビットですべての文字を固定ワード幅表現できるとか夢見ちゃってた時代)を考えると仕方がないんですが、大変不便なので。今や、修飾文字とかあって32ビットですら固定ワードにならず、PowerShellみたいに32ビットで文字列を扱ってもやっぱり解決せず。本当にほしいのは「UTF8をバイト列のまま扱える」クラスと、そこから「1文字とみなされるべき部分を抜き出す」メソッドなのではないかと。ちなみに、「UTF8をバイト列のまま扱える」クラスは、今、CoreFxチームが試験的に実装中らしいです。以下のようなクラスが最近追加されました。ついて運営者について。