Многоэтапное программирование

Многоэтапное программирование ( MSP ) — это разновидность метапрограммирования , в которой компиляция делится на ряд промежуточных фаз, что позволяет генерировать типобезопасный код во время выполнения . [1] Статически определенные типы используются для проверки того, что динамически сконструированные типы являются допустимыми и не нарушают систему типов.

В языках MSP выражения квалифицируются с помощью нотации, которая определяет фазу, на которой они должны быть оценены. Разрешая специализацию программы во время выполнения, MSP может оптимизировать производительность программ: это можно рассматривать как форму частичной оценки , которая выполняет вычисления во время компиляции в качестве компромисса для увеличения скорости обработки во время выполнения. [2]

Многоступенчатые языки программирования поддерживают конструкции, похожие на конструкцию цитаты и eval, за исключением того, что учитываются правила области действия . [2]

Ссылки

  1. ^ Таха, Валид (2004). «Нежное введение в многоэтапное программирование» (PDF) . Генерация предметно-ориентированных программ . Springer. стр.  30–50 . Архивировано из оригинала (PDF) 4 августа 2017 г.
  2. ^ ab Таха, Валид; Шеард, Тим (2000). "MetaML и многоэтапное программирование с явными аннотациями" (PDF) . Теоретическая информатика . 248 (1): 211– 242. doi : 10.1016/s0304-3975(00)00053-0 .
  • MetaOCaml
Взято с "https://en.wikipedia.org/w/index.php?title=Многоэтапное_программирование&oldid=1032316766"