英語
コーディング
プログラミング言語
語源

プログラマが知っているとよい英単語の語源

プログラミング言語の多くが英単語からなっている。

英語の手引き(manual)を読んだり、英語の関数名・変数名・定数名を理解したり、使いこなす上で、英語を語源から知っていると便利なことがある。

品詞を知っていることより、語源を知っている方が、はるかに重要です。


混合言語としての英語と日本語(English and Japanese as mixed languages)

英語は、ケルト語、ラテン語、アングロ・サクソン語、ノルマン語、フランス語など多くの語源を持つ混合言語である。

日本語も、朝鮮語、中国語、梵語(サンスクリット語)、アイヌ語、オーストロネシア語など多くの語源を持つ混合言語である。

これは、大陸の両端の島国ならではの、諸文化の終着地点という意味で類似点がある。

日本人は英語を深く理解できる素養があることに自信を持つとよい。

語源を知ると、意味が的確にわかっていなくても、全体像がつかめることがある。

あるいは、全体像がつかめなくても、意味がなんとなくわかるかもしれない。

日本語が混合言語であるとするのは有力な学説の一つである。英語が混合言語であるという学説は必ずしも敷衍していない。日本語との対比で研究するとよいかもしれない。

品詞を知っていることより、語源を知っている方が、はるかに重要な理由は、語源によって必ずしも、文法や品詞に囚われない理解の方がNativeに根付いているかもしれないから。

形容詞といっても、名刺の前につく形容詞と、名刺の後につく形容詞では意味が違うかもしれません。

口語では、原形や、動詞を名刺として使ったり、名詞にdoをつけて動詞的に利用したりします。

口語的なインタプリタでは、品詞や文法に対する理解は大雑把の方が、わかりやすいかもしれません。

大規模なデータ構造などでは、命名規則が体系化しているとよく、その際に、文法や品詞に気を使っているとわかりやすくなることがあります。それ以上に、語源をしらべて意味の違いを使い分けられると、ソフトウェアの質が高くなっているかもしれません。

定数名、変数名、関数名を英語由来の単語で示す場合に、語源を意識した命名規則をお勧めしています。


語源(root of a word)

Gogengo! - 英単語 語源

http://gogengo.me

語源の広場

http://gogen-wisdom.hatenablog.com/

語源から学ぶ英単語 ~ 英・語・源 ~

https://eigogen.com/

Hyper English Word Study Dictionary with Indo-European roots,

http://hidic.u-aizu.ac.jp

Online Etymology Dictionary

https://www.etymonline.com

Root Words & Prefixes: Quick Reference

https://www.learnthat.org/pages/view/roots.html

origin:語源

root word:語幹


英語調査(English Study)

アルク

https://www.alc.co.jp

google翻訳

https://translate.google.com


program

計画の事。計算機では、計算機に実行させる計画がprogram。

proは前もって。

gramはgraphと同じく、図、文字。

http://gogengo.me/words/1081

http://gogen-wisdom.hatenablog.com/entry/2017/01/25/180000

プログラムが計画書であり、設計書である理由は語源からすれば分かる。プログラミング言語以外で設計書を書かせるのは無駄。

UMLなどによる図も、プログラムの一種である。

図をXMLで記述したり、図からプログラミング言語を自動生成したりするのも語源からすれば自然な流れ。

programerは計画者。


design

設計。

英語のdesign, フランス語のdessinとも、語源はラテン語designareで、計画を記号で表すこと。

programとdesignは、語源は違うが内容はほぼ同じ。

http://crd.ndl.go.jp/reference/modules/d3ndlcrdentry/index.php?page=ref_view&id=1000066394

「プログラムを書く前に設計書を書け」といわれたら、「programming言語で書いたものが設計書です」と言えるような内容にしておけばよい。


develop

de=dis=apart

velop:包み

包みを開く。展開する。

展開(develop)して設計(design)する語の流れを見かける。

どういうものを作るか、いろいろ展開(develop)し、何を作るかが決まったら設計(design)する。

展開する際に、試作設計して決めることもある。この場合はdevelopとdesign同時に行う。

https://eigogen.com/word/develop/


compile

編纂する

コンピュータで仕事をする前、いろいろな書類を綴じて(file)、紙挟み(folder)に入れることをcompileと言っていました。

compile, file, folderは一連の紙の作業で使う言葉。

https://eigogen.com/word/compile/


assemble

組立る

a=ad=to

simil=like(類似した)

https://eigogen.com/word/assemble/


compute

計算する

com: 一緒に

pute : L.putare = to think

https://eigogen.com/word/compute/


process

処理する

proは前に、programのproと同じ。

cessは進む。

systemで、前に進むのがプロセス。

計算機であれば, task threadもprocess。

人であれば、仕事(task, job)も、活動(activity)もprocessの一部。

「プロセスがない」ということはありえない。その人に進捗が見えてないだけ。

http://obatyan1-english.hatenadiary.com/entry/2017/09/29/122433

「プロセスが定着する」というのもおかしい。前に進むのだから、どんどん変わっていくはず。

カタカナ語でプロセスという用語は使わない。使っている人は眉唾だと思うとよい。

「プロセス改善」が改悪へと突き進む

https://qiita.com/kaizen_nagoya/items/0f3a1174f81935bb6d85


manage

操る

manegeは、御者が馬車を目的地までたどり着くまでの作業。

manはmanualまどでも出てくる手のこと。

馬車が道を覚えていたら、御者は出発の合図をするだけ。

プログラマが優秀ならmangerは何もしなくてもよい。

高校などの部活のmanager は、この言葉の一番元の意味どおり。

選手がやらないことをやるのがmanager。

プログラミングでも、プログラマができないことを助けるのがmanagerの仕事。

プログラマが優秀なら指事してはいけない。

「マネージャが何もしてくれない」のは、「プログラマが優秀」という事を意味する。自慢でしかない。

https://eigogen.com/word/management/


configure

構成する。

con:一緒に

fig:形作る

ure:ラテン語の名詞化

http://hidic.u-aizu.ac.jp/result.php?tableName=tango&word=configure


install

導入する。設置する。

in: 中に

stall:置く

http://hidic.u-aizu.ac.jp/result.php?tableName=tango&word=install


file

書類綴じ

fi(ghi): 糸

http://hidic.u-aizu.ac.jp/result.php?tableName=tango&word=file(1)

https://eigogen.com/word/file/


folder

folde(ple): 折る

紙挟み。foldeが折ること。厚紙を折って、書類入れにしたことから書類(file)の入ったものをfolderと呼ぶ。

http://hidic.u-aizu.ac.jp/result.php?tableName=tango&word=folder


削除(delete, remove, erase)


delete:反対(方向)

deletus:ラテン語 destroy

http://hidic.u-aizu.ac.jp/result.php?tableName=tango&word=delete

https://www.etymonline.com/search?q=delete


remove

re:逆

move:動く、押し出す

http://hidic.u-aizu.ac.jp/result.php?tableName=tango&word=remove

http://hidic.u-aizu.ac.jp/result.php?tableName=tango&word=move


erase

eghs, ex: 外に

rēd-:引っかくことや削ること

http://hidic.u-aizu.ac.jp/result.php?tableName=tango&word=erase


参考(語源未調査。関連語)


make

作る

comple, link, locateする一連の作業を実行するコマンドmakeは作るための諸作業を一括実行。


build

構造(struct)のあるものを作る

configure, make, make installなどのmakeを含む構造のあるものを作る一連の作業。

buildはmakeを含む感じ。


link

連結する。


locate

配置する。


wireless , radio

無線。

wireless(線が無い:通信媒体)

wei-回転したり、ねじれること

http://hidic.u-aizu.ac.jp

radio: L:radius = ray(光線):通信主体

https://eigogen.com/word/radio-station/

https://eng-etymo.com/archives/4468


look, watch

look(視線を向けて意図的に)見る

http://hidic.u-aizu.ac.jp

例:look up table

watch

例:watch dog timer

view

例:view point(視点)

see

ゲルマン祖語 sekhwan

http://gogengo.me/roots/148

see also(も見よ)


用語(term)


register, registration

REGIST という英語は無い

http://developer.cybozu.co.jp/akky/2005/07/regist/

register, registrationというよく使う単語があれば、省略形以外に造語する必要はないかも。正しい、正しくないというよりは、みんなが使っているか使っていないかが判断基準にするとよい。みんなが使っていなければ、誤解する可能性があるのでうまくない。


economy, ecology

economy

oikos(家)+nomos(法秩序)

https://gogen-ejd.info/economy/

ecology

https://gogen-ejd.info/ecology/

oikos(家)+logia(研究)

エコノミーとエコロジーの語源

https://blog.goo.ne.jp/hardworkisfun/e/e8eabf343df82e970fc4ba38a642c163


attribute

https://eigogen.com/word/attribute/

に帰せしめる

at=ac(=to) = 割り当てる、…に属させる

trib, tribut- : L.tribuere = to pay(払う)、bestow(授ける)


property

ラテン語 proprius(個別の)

pro-([for] 指して)+privus(自分だけの;独特の)>preiwo-(個々の;独特の)

per-(前に)

個々のものに対して特別に必要とされることに対応していること


profile


訳語(translation)

Naming -名前付け-

https://qiita.com/Koki_jp/items/f3d3e824f98d182d4100

の記事には、英単語の訳がある。下記はそのうちカタカナ語のままで日本語に訳されていないものの訳を示した。

英単語
日本語

Clear
消す

Copy
写す

Flush
光る

Load
背負う

Merge
くっつける

Shutdown
閉じる、落とす

Cancel
取り消す

Refresh
回復する

Handle
操作する

生まれた時から計算機に取り囲まれた世代は、最初に英単語で覚える概念も多い。それを日本語だと思うか、英語だと思うかは本人の自由である。対外的に説明する場合には、カタカナ語では情報が増えないことを学ぶとよいかも。

情報が増えない別の例として、英単語の変数名に日本語の訳を注釈(comment)することがある。その日本語を英語に変換したら、情報が減る。

プログラマが心がけるとよい文章の書き方

https://qiita.com/kaizen_nagoya/items/af1e6207ccaa063dafb8


参考文献(reference)

語源を知るためのオンライン辞書

http://user.keio.ac.jp/~rhotta/hellog/2010-08-25-1.html

英語複文の構文解析と編集、その論理と方法  加藤 輝政 小川 清 佐良木昌、 情報処理学会研究報告自然言語処理(NL) 1997 69(1997-NL-120)

https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_uri&item_id=48961&file_id=1&file_no=1

言語処理学会第6回年次大会発表論文集 (2000)

http://www.anlp.jp/proceedings/annual_meeting/2000/index.html

C3-4 コンピュータ西暦2000年対応の標準化におけるデータ、用語、処理、試験

大角泰久,小林武史(大同工大),小川清(名市工研)

http://www.anlp.jp/proceedings/annual_meeting/2000/pdf_dir/C3-4.pdf

C5-6 不要語リストを用いたRFC英和辞書作成過程における課題, 森理, 本田芳久, 小川清,

http://www.anlp.jp/proceedings/annual_meeting/2000/pdf_dir/C5-6.pdf

C5-7 ソフトウェア開発工程における用語構造と翻訳辞書作成過程における課題

○小川清(名市工研)

http://www.anlp.jp/proceedings/annual_meeting/2000/pdf_dir/C5-7.pdf


参考文献 on Qiita

英語がスラスラと読める様になるための手引き

https://qiita.com/mas-yo/items/618958e9ddad4038a6ad

プログラマなのに知らなかったら恥ずかしい英単語

https://qiita.com/usatie/items/b41adf8114188406d2b8

プログラミングでよく使う英単語のまとめ【随時更新】

https://qiita.com/Ted-HM/items/7dde25dcffae4cdc7923

【小ネタ】IT用語の意外な語源・由来 7選

https://qiita.com/tmiki/items/8ffb22066bca143b68e1

関数の語源

https://qiita.com/yaju/items/d9b8de8414e495f9e289

覚えておくと対応力が上がる英単語

https://qiita.com/TakuyaS/items/0745470525167d4966ae

プログラマ(だけ)のための英単語帳

https://qiita.com/irxground/items/9cfda4cd79acd2b62ddc

コンピュータ英語 (機械学習とブロックチェーン)

https://qiita.com/tfutada/items/68a91ebe5fecab59f673

ネイティブと働いて分かった英語コミットメッセージの頻出動詞10つ

https://qiita.com/gogotanaka/items/b65e1b081fa976e5d754

技術記事読んだ時の英単語メモ①

https://qiita.com/shohhei1126/items/18188d361ebd6da2bdba


Coding

読みやすいコードを書くために

https://qiita.com/shimataro999/items/ef6cd838d56f1fe87015

ソースコードはしゃべるように書け

https://qiita.com/chooyan_eng/items/72f86a2ce2ca67d3b4a4

ソースコードの変数やメソッドを日本語で書いてはいけない理由

https://qiita.com/TakamiChie/items/9d7d4fe627e0cc246add

日本人が間違いやすいコーディング上の英語

https://qiita.com/sue738/items/9754b3cad13272bd3d39

モデルやメソッドに名前を付けるときは英語の品詞に気をつけよう

https://qiita.com/jnchito/items/459d58ba652bf4763820


英語の文節(english phrases)

ggrksと英語でコメントしたい時

https://qiita.com/modal_soul/items/77c98756cd03b2ca1aaa

和英辞典・自動翻訳だけじゃダメ!もっといい英語名を見つけるためのTips集

http://qiita.com/jnchito/items/3815a755b889b64a1840


自己参照(self reference)

プログラマが英語で報告・質問する時のいくつかの事例・方法

https://qiita.com/kaizen_nagoya/items/9cf2ba858e52e9795b67

なぜ計画者(programmer)はカタカナ語を使わない方がよいのか

https://qiita.com/kaizen_nagoya/items/d09e5ee549c4d9a17912

プログラマが心がけるとよい文章の書き方

https://qiita.com/kaizen_nagoya/items/af1e6207ccaa063dafb8

記事を書くときに注意していること

https://qiita.com/kaizen_nagoya/items/3a6e08309231aa05fb27


文書履歴(document history)

ver. 0.01 初稿 20190104 昼

ver. 0.02 develop, make, build 追加 20190104 午後

ver. 0.03 regist, compute 追加 20190104 夕

ver. 0.04 「訳語」追加。参考文献追記 20190105 朝

ver. 0.05 「語源調査」「混合言語としての英語と日本語」 みだし追加 20190105 昼

ver. 0.06 configure, install, link, locate追加 20190105 午後

ver. 0.07 参考文献追記 20190107

ver. 0.08 delete, remove, erase追記中 20190115

ver. 0.09 表現加筆 20190123

ver. 0.10 プログラマが英語で報告・質問する時のいくつかの事例・方法 URL追記 20190212

ver. 0.11 ソースコードはしゃべるように書け@chooyan_eng 追記 20190220

ver. 0.12 言語処理学会 追記 20190222

ver. 0.13 文法・品詞より語源 追記 20190224

ver. 0.14 wireless, radio 追記 20190301

ver. 0.15 economy, ecology追記 20190305