質問

は、人間が読めるフレーズや単語(すなわちPython、VB.NET)を主成分とするプログラミング言語のための開発環境のエラーフィードバックと自動補完を提供するために必要なチェック/レス厳格なコード分析である。これはCスタイル言語とは対照的です。これは、コード構造のシンボルと句読点に依存します。

役に立ちましたか?

解決

私は経験/議長の責任を持っています言語の正面

Wordy言語対句読点言語は、一般的に解析して静的に分析するのが一般的に困難です。

どちらの種類の言語を定義する人々は、数十年間(例えば、COBOLから1958年以来、COBOL)、または複雑な構文と複雑な名前の解像度と型推論規則の両方で洗練された言語(C ++、Scala、Ruby)を飾っています。その後、コンパイラベンダーは、自分が実行する奇妙なことをサポートするため、またはカスタマーロック(例えば、MS "管理C ++"、DLL宣言などを提供するために曖昧な構文を追加します。お粗末定義の3番目の問題があります。上の言語は、それらがどのように機能するかについての正確な規則を持っているかもしれませんが、多くの言語は実際の実装との苦痛な実験によってアイロンされなければならない暗いコーナーケースを作成したずさんな定義(たとえば、PHP)を持っています。

C ++は私たちの最悪のもので、特に。 C ++ 11委員会では、最近のものを大量に斬首しています。 C ++ 98の実装の上に、C ++ 11のフルネーム解決にまだ機能しています。 (名前解決コードはいくつかの250,000行のコードで十分ではありません!)

IBM COBOLは秒です。言語は巨人であり、すべての種類の面白い名前解決規則があります(「参照が明確な場合は資格のない特定の名前を参照できます」という名前では、このコンテキストでは明確な参照がありますか?)です。< / P>

過去の解析と名前/タイプの解像度を過ぎたら、コントロールフロー、データフロー、分析、範囲Anlaysis、Call Graph Contaching、...が一般的に同じ努力のほぼ同じ努力を受けます。以前のフェーズ。これらのタスクをサポートする本当に良いライブラリを持つことで、私たちはそれほど逃げます。

これを背景解析として、人々が望むスマート種類の「静的分析」をやり始めることができます。

別のポスターは、構文エラーからの回復と(強調)「意味のあるエラーメッセージを生成し続ける」と述べた。私がこれに言うことができるのは、「アーメン、兄弟」です。これを参照してください。 「部分的なプログラム」があり、これは本質的に構文エラーの修理を修正したときにあなたが取得するものです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top