LoginSignup
24
9

More than 1 year has passed since last update.

「値を返却する」って言うな

Last updated at Posted at 2014-12-10

よく「整数を返却する関数」とか「メソッドの返却値」という表現を目にしますが,たいへん違和感があります。
「返却」は,借りたりもらったりしたものを返す(元へ戻す)ことだからです。
それぞれ「整数を返す関数」「メソッドの返り値」と言えばいいでしょう。

和語の「返す」は「返却する」よりもかなり意味が広い言葉です。
「返却する」は,何かが A から B に移ったあと,B がそれを再び A に移すことです。
一方,「返す」はそれ以外にも,「言葉を返す」(口答えする,反論する)のようにも使います。この場合,何かを言われて,その相手に別の言葉を投げるわけですね。「返事を返す」「挨拶を返す」「笑顔で返す」も同様。働きかけに対する反応になっています。
関数やメソッドが値を返すのも,呼ばれたときに持ち込まれた引数を元に戻すというわけではなく,制御の流れが呼び出し側に戻る際に何らかの値を持って行く,そのことを言っているわけですよね。

ここ最近,急激に「返却する」という表現が広まっているように感じます。
多くの人が使えばそれに目が馴れてしまい,「おかしい」と感じる人は減っていくでしょう。
この流れはもう止められないのかもしれません1
一般論として,言葉の意味・用法が変化することは自然なことですが,私はまだこの「返却」に抵抗を続けたいと思います。

「返却する」と書いてしまう背景には,意識的にせよ無意識にせよ「漢語で表現したい」という動機があるのでしょう。
人によりますが,ある種の文章(「きちんとした文章」とか)を書くときに和語を避けようとする傾向があります。漢語を使うと何かもっともらしい感じがするんですね。
それと,漢語は「返却」だけで名詞になりますが,和語だと「返すこと」のような形にせざるを得ません2。また,漢語だと「返却値」「返却時」などのように造語要素として幅広く使えますが,和語は漢語ほどの造語力がありません3
「値を返す」の「返す」を漢語で表そうとすると,他に適当な語が浮かばないために,意味の似た「返却」を選んでしまうのではないかと思っています。

ところで,Rust には「所有権を返す」という概念があります。これはまさに返却です。
所有権が一時的に移り,その所有権を元に戻すわけですから。


  1. プログラミング界隈では「返却」に新しい意味・用法が付け加わった,と考える時期が近づいているのかもしれません。 

  2. 和語でも「返し」で名詞になるのですが,今の場合には使えないでしょう。 

  3. 「返却値」には「返り値」「戻り値」という定着した用語があるので,それを使えばいいのですが,ここでは漢語・和語の造語力の一般論を述べています。 

24
9
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
24
9