DEV Community

Cover image for 考古--operator 為什麼翻譯為『運算子』
codemee
codemee

Posted on

考古--operator 為什麼翻譯為『運算子』

大部分的程式設計教材都會將 operator 翻譯為『運算子』, 我自己對於『子』一直覺得很疑惑, 倒底是什麼意思?有些人會說這個『子』就跟『帽子』、『鞋子』等等中的『子』一樣是個語尾綴詞, 沒有什麼意思, 不過運算子的『子』讀音『ㄗˇ』, 而不是語尾綴詞的『ㄗ˙』, 並不是同一個意思。

因為不得其解的緣故, 所以過去我個人偏好將 operator 翻譯為『運算器』, 取 er、or 字尾為做什麼事情的『人』或『器具』的意思, 但因為這樣的譯法和一般通用的『運算子』不同, 所以也有不少人表達無法接受的意見, 但卻也說不出翻譯為『運算子』的理由。

最近查閱《遠流中文活用大辭典》, 發現在『子』字的解釋中, 有這樣一條:

名 (05)稱某種職業之人。例:學子、舟子。

其中『學子』是大家廣為熟知的詞, 在《國語辭典簡編本》中的解釋就是:

學生、求學的人。

而『舟子』可能大家並不一定聽過, 在《重編國語辭典修訂本》中的解釋如下:

船夫、梢公、水手

也就是操舟的人。因此, 『子』字在漢文中本來就有『做什麼事的人』的意思, 依此脈絡, 將 operator 譯為『運算子』就很合理了。

不過到了現代, 大部分人 (像我就是) 可能已經不知道『子』的意思, 所以程式語言中比較近代才出現或是流行的語彙, 就不大會用『子』字, 舉例來說, Python 中常常出現的 iterator 和 generator, 通用的譯法為『迭代器』(簡體字的世界有人譯為『迭代子』) 與『生成器』, 是用『器』字, 而不是用『子』字。藉由『子』和『器』的區別, 也可以大概知道這個詞彙的年代遠近。

瞭解『運算子』的可能源由後, 回頭過來看 operand 譯為『運算元』的『元』字, 我想比較合理的說法可以參考《遠流中文活用大辭典》裡的這個條目

形 (04)基本的。例:元素。

『運算元』應該是取用來運算的『元素』之意。在日文中, 將 operator 與 operand 譯為『演算子』和『被演算子』, 沒有幫 operand 另創一詞, 也算是很直白的譯法, 簡單明瞭, 就是『被拿來運算的東西』, 不過中文除了現在大家流行的『被自殺』、『被消失』這些新興詞彙外, 很少用『被』字, 否則偷懶一點的譯法就是把把 operand 譯為『被運算子』了。

Heroku

This site is built on Heroku

Join the ranks of developers at Salesforce, Airbase, DEV, and more who deploy their mission critical applications on Heroku. Sign up today and launch your first app!

Get Started

Top comments (0)

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More