プログラミング言語とは?

Weblio 辞書 > 固有名詞の種類 > 方式・規則 > 主義・方式 > 学問 > 学問 > プログラミング言語の意味・解説 

プログラミング言語

読み方プログラミングげんご
別名:プログラム言語
【英】programing language, programming language

プログラミング言語とは、計算機に対して動作手順動作方法動作内容などを適切に指示するために用いられる、人工的構成された言語体系のことである。

情報処理技術者試験などでは「プログラム言語」と表記されることもある。

計算機は、機械語呼ばれる中央処理装置直接解釈できる命令実行することによって動作する。しかし、人間にとって、機械語を扱うことは非常に難しい。そのため計算機与え指示を、より人間にとって扱いやすい表現与えるための手段として、プログラミング言語が用いられている。

プログラミング言語において記述される個々命令集まりは、プログラム呼ばれる。プログラミング言語を用いてプログラム設計記述する者はプログラマーと呼ばれ、プログラミング言語を用いて記述された文書ソースコード呼ばれる

プログラミング言語は、言語理解しやすさとともに、厳密さ、簡潔さ、複雑な内容表現できる柔軟さなどが追求されている。プログラム利用分野実行形態などによって、さまざまな種類のプログラミング言語が開発されている。その、それぞれのプログラミング言語は、固有の文法語彙意味論持ち仕様厳密に規定されている。

カンザス大学Webサイト上でBill Kinnersleyによって管理運営されている「The Language List」では、過去から現在に至るまで存在した、およそ2500種類上るプログラミング言語が紹介されている。

利用形態によるプログラミング言語の分類

プログラミング言語を利用形態から分類すると、アセンブリ言語コンパイラ型言語インタープリタ型言語(あるいはスクリプト言語)に分けることができる。

アセンブリ言語は、機械語に対応する命令シンボリック表現記述する点に特徴がある。CPUレベルに近い命令記述がとられることから、機械語とともに低級言語呼ばれる区分にも分類される。

コンパイラ型言語は、変数名や数式などのような人間読みやすい、より抽象的表現によってプログラム記述し、コンパイラ用いて機械語中間言語などのより低レベル命令変換し、目的プログラム生成する。

インタープリタ型言語は、実行時にその都度命令解釈実行を行うタイプであり、コンパイル過程がないか、あるいはユーザーから隠されている形態である。コンパイラ型言語インタープリタ型言語は、人間に近い表現を用いる高級言語範疇にほぼ一致する。

パラダイムによるプログラミング言語の分類

プログラムどのように構成するかという観点パラダイム)から、プログラミング言語を分類すれば、手続き型言語関数型言語論理型言語、あるいは、オブジェクト指向言語などが存在する。同じパラダイム言語は、文法違いがあっても、大まかなプログラム構成互いに通っている。

手続き型言語は、手続き集まりをもとに、ジャンプ条件判定繰り返しなどを制御プログラム構築する主な言語としては、FortranCOBOLPL/IBASICAdaC言語Pascalなどを挙げることができる。

関数型言語においてはプログラムは、関数の合成として表現される。主な例としては、LispSchemeHaskelMirandaMLOcaml、F#などがある。

論理型言語では、プログラムは、論理式集まりとして表現される。主な例としては、PlannerPrologなどがある。

オブジェクト指向言語では、プログラムは、オブジェクト群とその相互作用として表現される。主な例としては、SimulaSmalltalkC++Objective-CEiffelDylanJavaC#D言語などがある。

その他にスクリプト言語呼ばれるインタープリタ型言語実行形態で、アプリケーションレベルでの記述適した言語数多く登場している。スクリプト言語主な例としては、GUIなどに用いられるTcl/TKWeb構築においてサーバー側で用いられるPerlPythonRubyWebブラウザ側で用いられるJavaScriptFlashなどがある。

なお、プログラミング言語の多くは、英語の語彙を用いるが、日本語を用いたプログラム作成できる「なでしこ」や「Mind」などのプログラミング言語も存在する。

その他

あるプログラミング言語のソースコード中間ファイルなどを処理す個々プログラムツール類を言語処理系と呼び論理的規定されたプログラミング言語そのものとは区別されている。例えば、BASICソースコードを、BASICコンパイラという言語処理系を用いてコンパイルすると、直接実行可能な実行ファイル生成される。しかし、同じBASICソースコードを、別の言語処理系であるBASICインタプリタ用いてコンパイルをせずに直接実行することもできる。つまり、あるプログラミング言語がコンパイラ型言語であるか否かということは言語そのものではなく実際に実装された言語処理系の問題であるといえる

現実商用化された言語処理系は、技術的流行取り入れ複数パラダイム利用可能にした、ハイブリッド型、あるいはマルチパラダイムになっている場合が多い。


参照リンク
The Language List - (英語)
ISO/IEC JTC1/SC22/WG14 - C言語ワーキンググループ - (英語)
Javaテクノロジ - (Sun Microsystems
オブジェクト指向スクリプト言語 Ruby
ソフトウェアのほかの用語一覧
プログラミング:  オブジェクトモジュール  上書きインストール  ビープ  プログラミング言語  構文解析  マクロアセンブラ  命令

プログラミング言語

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2016/05/02 14:02 UTC 版)

プログラミング言語(プログラミングげんご、プログラム言語とも)はコンピュータプログラムを記述する(コンピュータプログラミングする)ための形式言語である(「言語」と付いてはいるが、形式言語は、一般にいう言語である自然言語とは違うものである)[1]




[ヘルプ]
  1. ^ ISO 5127—Information and documentation—Vocabulary, clause 01.05.10 では、プログラミング言語を「プログラムを記述するための人工言語」と定義しているが、「人工言語」という語はたとえばエスペラントのような形式言語ではない(という意味では自然言語である)言語のことを指すこともあるため、酷い誤解を広めている原因となっている。
  2. ^ 2008年2月現在、The Encyclopedia of Computer Languages (Murdoch University、オーストラリア)には8152のコンピュータ言語がリストアップされている。
  3. ^ ACM SIGPLAN (2003年). “Bylaws of the Special Interest Group on Programming Languages of the Association for Computing Machinery”. 2006年6月19日閲覧。, The scope of SIGPLAN is the theory, design, implementation, description, and application of computer programming languages - languages that permit the specification of a variety of different computations, thereby providing the user with significant control (immediate or delayed) over the computer's operation.
  4. ^ Dean, Tom (2002年). “Programming Robots”. Building Intelligent Robots. Brown University Department of Computer Science. 2006年9月23日閲覧。
  5. ^ MacLennan, Bruce J. (1987年). Principles of Programming Languages. Oxford University Press. p. 1. ISBN 0-19-511306-3. 
  6. ^ IBMは PL/I をリリースしたとき、やや野心的にマニュアルを The universal programming language PL/I (IBM Library; 1966) と名づけている。このタイトルはIBMが目標としていた無制限のサブセット化機能を反映している「PL/I は特定の応用に必要な部分を抜き出し、サブセットを分離可能なように設計されている」 (Encyclopaedia of Mathematics » P  » PL/I”. SpringerLink. 2006年6月29日閲覧。). AdaとUNCOLも同様の初期目標を持っていた。
  7. ^ Frederick P. Brooks, Jr.: The Mythical Man-Month, Addison-Wesley, 1982, pp. 93-94
  8. ^ Dijkstra, Edsger W. On the foolishness of "natural language programming." EWD667.
  9. ^ Perlis, Alan, Epigrams on Programming. SIGPLAN Notices Vol. 17, No. 9, September 1982, pp. 7-13
  10. ^ Michael Sipser (1997年). Introduction to the Theory of Computation. PWS Publishing. ISBN 0-534-94728-X.  Section 2.2: Pushdown Automata, pp.101–114.
  11. ^ a b c d e Andrew Cooke. “An Introduction to Programming Languages”. 2006年6月30日閲覧。
  12. ^ Milner, R.; M. Tofte, R. Harper and D. MacQueen. (1997年). The Definition of Standard ML (Revised). MIT Press. ISBN 0-262-63181-4. 
  13. ^ Kelsey, Richard; William Clinger and Jonathan Rees (1998年2月). “Section 7.2 Formal semantics”. Revised5 Report on the Algorithmic Language Scheme. 2006年6月9日閲覧。
  14. ^ ANSI — Programming Language Rexx, X3-274.1996
  15. ^ Benjamin C. Pierce は次のように書いている。
    ". . . the lambda calculus has seen widespread use in the specification of programming language features, in language design and implementation, and in the study of type systems."(訳:ラムダ計算はプログラミング言語の仕様記述、言語設計と実装、型システムの研究に広く使われている)
    Pierce, Benjamin C. (2002年). Types and Programming Languages. MIT Press. pp. 52. ISBN 0-262-16209-1. 
  16. ^ a b O'Reilly Media. “History of programming languages”. 2006年10月5日閲覧。
  17. ^ Frank da Cruz. IBM Punch Cards Columbia University Computing History.
  18. ^ Richard L. Wexelblat: History of Programming Languages, Academic Press, 1981, chapter XIV.
  19. ^ François Labelle. “Programming Language Usage Graph”. Sourceforge. 2006年6月21日閲覧。. Sorceforge でのプロジェクト群で使われている言語の統計をとった結果である。C言語はよく使われているが、2006年には Java に抜かれている。ただし、C++を含めると一番多く使われていることになる。
  20. ^ Hayes, Brian (2006年). “The Semicolon Wars”. American Scientist 94 (4): pp. 299-303. 
  21. ^ Dijkstra, Edsger W. (March 1968). “Go To Statement Considered Harmful”. Communications of the ACM 11 (3): 147–148. http://www.acm.org/classics/oct95/ 2006年6月29日閲覧。. 
  22. ^ Tetsuro Fujise, Takashi Chikayama, Kazuaki Rokusawa, Akihiko Nakase (December 1994). "KLIC: A Portable Implementation of KL1" Proc. of FGCS '94, ICOT Tokyo, December 1994. 第五世代コンピュータ・プロジェクト・アーカイブ
  23. ^ Jim Bender (2004年3月15日). “Mini-Bibliography on Modules for Functional Programming Languages”. ReadScheme.org. 2006年9月27日閲覧。
  24. ^ Survey of Job advertisements mentioning a given language
  25. ^ Counting programming languages by book sales
  26. ^ Bieman, J.M.; Murdock, V., Finding code on the World Wide Web: a preliminary investigation, Proceedings First IEEE International Workshop on Source Code Analysis and Manipulation, 2001
  27. ^ TUNES: Programming Languages”. 2008年2月29日閲覧。
  28. ^ Wirth, Niklaus (1993年). “Recollections about the development of Pascal”. Proc. 2nd ACM SIGPLAN conference on history of programming languages: 333–342. http://portal.acm.org/citation.cfm?id=155378 2006年6月30日閲覧。. 


「プログラミング言語」の続きの解説一覧





固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

プログラミング言語に関連した本

辞書ショートカット

カテゴリ一覧

全て

ビジネス

業界用語

コンピュータ

電車

自動車・バイク

工学

建築・不動産

学問

文化

生活

ヘルスケア

趣味

スポーツ

生物

食品

人名

方言

辞書・百科事典

すべての辞書の索引

「プログラミング言語」の関連用語

プログラミング言語のお隣キーワード

   

英語⇒日本語
日本語⇒英語
   
検索ランキング

画像から探す

ThinkStation

Windows 7

Xbox 360

Sculpt Touch Mouse

Droid 3

Kindle for Android

T6 NEON

スーパーコンピュータ





プログラミング言語のページの著作権
Weblio 辞書情報提供元は参加元一覧にて確認できます。

  
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2016 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリプログラミング言語の記事を利用しております。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのプログラミング言語 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2016 Weblio RSS