見出し画像

識別子に顔文字は使えるのか?

なにぶん、深夜なものですから。

さて、くろまるさんの記事を読んで気になってしまいました。寿司ビール問題です。文字コードがらみの問題です。詳しくは検索してみてください。「うへぇ」ってなること請け合いです。

ここ久しく古いシステムのお守りばかりしていたこともあって、顔文字の含まれるSQLを初めてみました。うへぇ。

select * from hoge where piyo = "🙂";

で、ふと、識別子(関数名や変数名など)に顔文字が使えるのか?、なんてことが気になってしまい、寝るタイミングを逃してしまいました。

とりあえずVisual Studioで‥‥、あれ?、入ってない。ああ、Windowsを再インストールした時に、か。じゃあ、ダウンロードだ!

それなりに時間がかかりますので、途中でふと我に返り、こんな時間になにしてるのやら‥‥、ま、いいか~。てな感じで。ほら、深夜ですし。


とりあえずのVB.Netでは不可でした。

Visual Studio 2022、.Net 6.0です。

他は試してませんがきっと同様でしょう。顔文字というより、UTF8の4バイトの文字が不可のようです。「𡈽」や「𩸽」は不可でした。

「🀀」やら「🂡」やらも不可でした。
「🉑」が不可なのは、まぁ、しょーがないですか。

ともあれ、昨今では顔文字や絵文字が普及しつつあるように思います。サポートされてしまう未来もあり得るのでしょう。その時には2バイト文字の問題と同様に4バイト文字も議論になるに違いありません。うへぇ。

ちなみに上に書いた2バイト文字云々は全角文字のことです。漢字やひらがな、カタカナのことです。これについては掘り下げません。朝になってしまいますので。


まぁ、あれです。

先回りして、規約に不可って書いておけばよいでしょう。老害なんて言われちゃうのかもしれませんが。

サポート → 甘味 → 脳ミソの栄養 → 記事 → 🙂