「コンパイラ型」言語と「インタプリタ型」言語に関するまとめ
なんの話?と思ったら、コンパイラ型言語のとインタプリタ型言語のはなしか。そもそも、そういう分類を最初しなければ良いと思う。 twitter.com/kmizu/status/1…
2019-09-16 21:22:53初心者/初学者向けへの説明だから云々ての、多少わからなくもないのだけど、一方で、それは、初学者の知性を舐めてるんでは?と思うこともある。「わかりやすいけど、ちょっと間違ってる説明」の方が教育的にいいと信じ込んでるかもしれないけど、そこのエビデンスが欠けてるのではと思うことも多い。
2019-09-16 20:49:56コンパイラ型言語についてのオレの立場はこれ。初心者向けな用語ではないが、言語設計の何たるかを学ぶコンテキストでは意味のある特徴(分類ではない)だと思う。 twitter.com/tomooda/status…
2019-09-16 21:35:03言語デザインとしてコンパイラ実装された時に最大の効果を発揮できるよう言語機能を組み合わせた言語については、オレは恥も臆面もなく「コンパイラ型言語」と呼ぶよ。例えばFORTRANはコンパイラ型言語だ。もちろんインタプリタ実装も可能だし存在するが、立派なコンパイラ型言語だと思う。
2019-09-16 12:15:46@kmizu 現代のコンピュータシステムで、他人にインタープリタ型言語とコンパイラ型言語を論理的に説明する事の難しさをツイートを拝見させて頂いて理解できたと思います。。。
2019-09-16 21:39:38ところで、基本情報技術者試験の過去問で、"手続型言語のコンパイラが行う処理のうち、最初に行う処理はどれか。" で、正解は「字句解析」らしいのだけど、別に「構文解析」でも正しいのではと思った。理論的にも現実的にも。
2019-09-16 21:55:16プログラミング言語消費者にとってはコンパイラ型言語などない、でOKなのでは。言語設計者にとっては、他人にその特徴をこの言葉で伝えるかは別にして、設計している言語の基準となる処理系方式のイメージを持っていて、その実行モデルに適合した言語機能を組み入れていく人が多いだろうと思う。
2019-09-17 09:41:25基本情報技術者試験の勉強をすると、もれなく「インタプリタは、プログラムを 1 行ずつ翻訳しながら実行する」というような知識を埋め込まれるので、あの試験を勧める人の全員に、そういった知識の尻拭いをする義務がある
2019-09-17 10:01:02