パスワードを忘れた? アカウント作成
12710897 journal
プログラミング

okuの日記: [C++] 「xvalue」の呼び方 4

日記 by oku

元ネタは Core C++ - lvalues and rvalues より:

タイトルの通りです。 ま、暫定解を言えば「『えっくすばりゅー』って呼べばいい」のですけど。

C++03 以前、値には「lvalue」と「rvalue」がありました。 JIS X 3014 より抜粋 (まだ、C++1x に追従してないのね... というツッコミには目をつぶることにして。 この記事では却って好都合):

3.10 左辺値と右辺値  すべての式は,左辺値又は右辺値のいずれかをもたらす。
  左辺値は,オブジェクト又は関数を参照する。 クラス型又は cv 修飾付きのクラス型の式の場合,右辺値式がオブジェクトを参照することがある。
...

一方、n3291 (現在は参照できなくなった模様ですが、n3242 (PDF 注意) なり n3337 (PDF 注意) なりを参照いただいても大体同じです) には、

3.10 Lvalues and rvalues
Expressions are categorized according to the taxonomy in Figure 1.
...

と書かれていて、その「Figure 1」に図示された内容は、概ね下表を矢印を使って綺麗に描いたイメージになっています。

+------------+---------+---------+
|            | glvalue | lvalue  |
|            |         +---------+
| expression +---------+ xvalue  |
|            |         +---------+
|            | rvalue  | prvalue |
+------------+---------+---------+

古き良き生 C の時代から (どこぞで「CPL の時代から」という記事を読んだような気もするのですが、記憶が曖昧なのでここでは拘りません)「lvalue」と「rvalue」という区分けは存在していて、日本語では各々「左辺値」「右辺値」と呼び習わされて来ました (上述した JIS の文面の通り)。

一方、JIS X 3014 は更新されていないものの、「glvalue」「prvalue」については、まあ、「汎左辺値」「純右辺値」とか言っておけば、大概のネイティブ日本語話者なら凡そ大意は掴み取ってくれるでしょう。 多分。

さて。 これに対して「xvalue」(eXpiring value) の方は、どういった日本語をあてればいいでしょうか? 昨今 (私は)「えるばりゅー」とか「あーるばりゅー」とか喋ったりすることが多々あるので、冒頭に書いた通り「『えっくすばりゅー』でいいじゃん」と言い切ってもいいっちゃいいのですが、ま、ここでは日本語 (漢字熟語) の体操として考えてみましょう、ということで。

「expire」に対する直訳としてパッと思いつくのは、

  • 満了
  • 失効
  • 期限切れ

辺りですが、これらの単語はあまり具合が良くないように感じられます。 恐らく「expired」に相当する意味を含んでしまうからでしょう。

「一時的・一過性の寿命があって、その命数を全うすると消尽するが、その直前までは参照できる」という意味を込められる二~三文字の漢字熟語があると都合が良いのですが...
件の n3291 の説明を借りると

An xvalue (an "eXpiring" value) also refers to an object, usually near the end of its lifetime (so that its resources may be moved, for example). An xvalue is the result of certain kinds of expressions involving rvalue references (8.3.2). [ Example: The result of calling a function whose return type is an rvalue reference is an xvalue. - end example ]

という奴です。

「有限寿命」「定命」「終息」「終結」「終決」...という辺りでギブアップしました。

http://renso-ruigo.com/ とか http://thesaurus.weblio.jp/ とか http://ruigo-tamatebako.jp/ の力も借りてみたのですが、どうも「これ!」という単語が来てくれません。

というわけで、しばらく「えっくすばりゅー、expire する値のことで、要は一過性の寿命のある値のことです」という言い回しをすることになりそうです。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

人生unstable -- あるハッカー

読み込み中...