메타 프로그래밍의 메타 프로그래밍 개념
반사는 메타 프로그래밍을 촉진하는 중요한 언어 특성입니다. 프로그래밍 언어 자체를 Lisp 나 Rebol 과 같은 일등 개체로 사용하는 것도 유용합니다. 제네릭 프로그래밍을 지원하는 언어도 메타 프로그래밍 기능을 사용합니다.
메타 프로그래밍은 일반적으로 두 가지 방법으로 작동합니다. 한 가지 방법은 응용 프로그램 인터페이스 (API) 를 통해 런타임 엔진의 내부 정보를 노출하는 것입니다. 또 다른 방법은 프로그래밍 명령이 포함된 문자열을 동적으로 실행하는 것입니다. 따라서 "프로그램은 프로그램을 작성할 수 있습니다." 두 가지 방법 모두 사용할 수 있지만 대부분의 방법은 주로 그 중 하나에 의존한다.