メタプログラミングとは何ですか?
メタプログラムは、他のプログラムを作成するコンピュータープログラムを作成するプロセスです。メタプログラムプロセスにより、通常は実行時間中に行われる作業はコンパイル期間に割り当てられるため、コンピュータープログラマーにより大きな柔軟性が可能になります。このプロセスは、プログラムのコードを手動で書き込む時間を削減するため、他のタスクに焦点を合わせるプログラマの時間を解放します。メタプログラムにより、プログラムが効率を高めて新しい状況に取り組むことができるため、再コンパイルは不要です。 「Metalanangage」とは、メタプログラムが利用するコンピューター言語に与えられた用語です。
オブジェクト言語は、METAプログラミングプロセスによって記述されたプログラムのコンピューター言語です。反射性はMetalaniongageに与えられる用語であり、メタプログラムをもたらすことができます。 メタプログラミングはさまざまな方法で機能します。 1つの方法は、アプリケーションプログラミングインターフェイスがプログラミングコードがランタイムエンジンの内部にアクセスできるようにすることです。
メタプログラグリングが機能するもう1つの方法は、プログラムが動的実行プロセスを通じて他のプログラムを作成できるようにすることです。この場合、このプロセスでは文字列式が使用されます。これらの2つのプロセスで同じ言語を利用できますが、言語が一方のプロセスを他のプロセスよりも好むことは珍しいことではありません。
メタプログラムは、言語を回避することでも機能します。これにより、プログラム変換システムを通じて言語を変更できます。この手順により、メタプログラムは、言語がメタプログラム特性を使用していなくても、言語を使用する自由を提供します。
メタプログラムにはソースコードは必要ありません。インクリメンタルコンパイルまたはランタイム変化可能なプログラムによって実行できます。 コンピューターLangaugae Lispは、メタプログラムプロセスに好まれる言語です。これは、私たちのようにこのタイプのコンピューター言語の単純さのためですその力として。
ランタイム期間とは対照的に、プログラム定義期間中にコードの評価を許可することにより、LISP言語の動作を利用するメタプログラム。このプロセスは、メタプログラム言語とホストプログラミング言語を同じにします。これが発生すると、このLISPルーチンはメタプログラムプロセスのためにリサイクルできます。
他の言語は、プログラムインタープリターの統合でこの正確なプロセスを使用しています。このインタープリターは、プログラムのデータで動作します。メタプログラムのドメイン固有のプログラミング言語は、パーサーと語彙分析装置を作成する別のフォームです。これらにより、ユーザーは正規表現を使用して言語を定義できます。