「プラグマ」という言葉はどこから来たのですか?


83

だから私はプラグマが何であるか、そしてそれが何のために使われるかを知っています、しかし単語自体の意味は何ですか?私はコードで何度もそれを使用しましたが、その単語が実際に何を意味するのか、または何を表すのかを本当に知りませんでした。


13
それは「実用的」の語用論の語用論であるギリシャ語のπραγμαにルーツを持っています。それは私があなたに言うことができる最高です。
asveikau 2010

6
+1私はいつもこれを不思議に思っていましたが、何らかの理由でここで尋ねようとは思いませんでした。
ジェイリッグス

23
@AaronMcSmoothこれはどのように話題から外れていますか?プログラミング関連です。
フィロソ2010

7
ねえ、皆さん、プラグマはプログラミングに関連しています。この用語がどこから来ているのか疑問に思って、プロのソフトウェア開発の仲間に聞いてみてください。
TJ Crowder 2010

6
@ AaronMcSmooth、FAQを読んでください、これはオフトピックとはみなされません。また、エイダ・ラブレスが誰であるかを知ることで、あなたはより優れたプログラマーになりますか?番号?それなら、なぜ彼女は私が知っているすべてのCSカリキュラムで言及されているのですか。
フィロソ2010

回答:


64

Adaの設計を説明する米国政府所有の(!)ドキュメントによると:Ada®プログラミング言語の設計の根拠

プラグマ(ギリシャ語でアクションを意味する)は、コンパイラのアクションを特定の方法で指示するために使用されますが、プログラムのセマンティクスには影響しません(一般的に)。

私はそこの(最後の警告)が好きです...

この相互参照は、プラグマ(asveikauによる元の質問にコメントされているπράγμα)を意味するオンラインギリシャ語辞書(たとえば、Martin Yorkによって引用されている)とよく参照されます

  1. 行われたこと、証書、達成された事実
  2. 何が行われ、何が達成されているか
    1. スペック ビジネス、商取引
  3. 問題、質問、事件
    1. スペック 法医学的な意味で、法律、訴訟、訴訟の問題
  4. 存在する、または存在するもの

理解するための鍵は、情報ではなく行動という言葉にあるようです。


素晴らしい答え、非常に良いリファレンスとその内容の要約。ありがとう!
MGSoto 2010

18

数学と論理学では、プラグマは与えられた、事実、それに続く議論、問題、または証明の前提条件です。


16

ウィキペディアから右に抜粋(プログラミング):

Adaでは、コンパイラ指令はプラグマ(「実用的な情報」の略)と呼ばれます。

Cの場合は明示的ではありませんが、とにかくこれで質問に答えられるはずです。ただし、TJが指摘したように、この情報の有効な情報源はありません。


8
マインド、その記事が引用されません任意の元のソースを...と明らかに非正規のサイトの非常に、非常に短いリストアップ「+プラグマ+実用的+ ADAと」ターンAの有名なウェブ検索エンジンで検索します。それが真実ではないという意味ではありません。
TJ Crowder 2010

1
あなたは絶対に正しいです、情報源は最もありがたいです。それでも、私が間違っていることが証明されない限り、答えを残すのが最善だと思います。
Phlibbo 2010

7

古代ギリシャ語から:

プラグマ:行われたこと、事実

オタクなものすべてと同じように、誰かが自分の利益のためにあまりにも賢くなりすぎようとしていました。残念ながら、その本来の意味は私たちの他の人には失われます(Googleとラテン語/ギリシャ語から英語への辞書が手元にない限り)。

http://www.studylight.org/lex/grk/view.cgi?number=4229
http://www.bibletools.org/index.cfm/fuseaction/Lexicon.show/ID/G4229/pragma.htm

オリジナル(上記のページに書かれていることですが、その本のコピーはありません):

セイヤーとスミス。「プラグマのギリシャ語辞書エントリ」。「新約聖書ギリシャ語辞書」。


3

プログラミング言語のAdaは、おそらくプラグマを使用してプリプロセッサディレクティブを指定した最初のコンパイラでした。この言葉は「実用的な情報」の短縮形として使用されました

Cプログラミング言語が設計されたとき、最初はプラグマディレクティブがありませんでしたが、カスタムコンパイラ機能をサポートするために仕様にすぐに追加されました。(つまり、インテルC ++コンパイラーの#pragmaoptimization_level)

それ以来、多くの言語がC#を含め、何らかの形でプラグマを実装してきましたが、多くの場合、ビルド時間の警告と最適化のヒントに制限されています。

非標準のCおよびC ++で最も一般的で便利なプラグマの1つは、ファイルを1回だけ含めるように指定するために一度使用された#pragmaです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.