متن زیر چه موضوعی را مورد بحث قرار داده است؟

متن: فرا برنامه‌نویسی (به انگلیسی: metaprogramming)، یک تکنیک برنامه‌نویسی است که در آن برنامه‌های رایانه‌ای می‌توانند سایر برنامه‌ها را به عنوان داده خود بپذیرند. این بدان معناست که یک برنامه می‌تواند برای خواندن، تولید، تحلیل یا تبدیل برنامه‌های دیگر و حتی اصلاح خود در حین اجرا طراحی شود. در بعضی موارد، این به برنامه نویسان اجازه می‌دهد تا تعداد خطوط کد را برای بیان راه‌حل به حداقل برسانند، به نوبه خود زمان توسعه را کاهش می‌دهد. این برنامه همچنین با انعطاف‌پذیری بیشتر به برنامه‌ها امکان می‌دهد تا به‌طور مؤثری با شرایط جدید و بدون جبران مجدد رفتار کنند. زبانی که در آن فرابرنامه نوشته شده‌است، فرازبان است. 
موضوع:
فرا برنامهٔ نویسی