메타프로그래밍

1 개요[ | ]

metaprogramming
메타프로그래밍
  • 자기 자신 혹은 다른 컴퓨터 프로그램을 데이터로 처리함으로써 프로그램을 작성·수정하는 프로그램을 작성하는 것
  • 넓은 의미에서, 런타임에 수행해야 할 작업의 일부를 컴파일 타임 동안 수행하는 프로그램을 말하기도 한다.
  • 메타 프로그래밍에 이용되는 언어를 메타 언어라고 하고, 메타 프로그래밍의 대상이 되는 언어를 대상 언어라고 한다.
한 프로그래밍 언어가 자기 자신의 메타 언어가 되는 것을 반영이라고 한다.

2 예시[ | ]

#!/bin/sh
# metaprogram
echo '#!/bin/sh' > program
for i in $(seq 992)
do
    echo "echo $i" >> program
done
chmod +x program

3 같이 보기[ | ]

4 같이 보기[ | ]