https://papers.nips.cc/paper/9116-write-execute-assess-program-synthesis-with-a-repl
Мы представляем подход к синтезу нейронных программ, объединяющий компоненты, которые пишут, выполняют и оценивают код для навигации в пространстве поиска возможных программ. Мы оснащаем процесс поиска интерпретатором или циклом чтения-оценки-печати (REPL), который сразу выполняет частично написанные программы, раскрывая их семантику. REPL решает основную проблему синтеза программ: небольшие изменения в синтаксисе могут привести к огромным изменениям в семантике. Мы обучаем пару моделей, политику, которая предлагает написать новый фрагмент кода, и функцию ценности, которая оценивает перспективы написанного на данный момент кода. Во время тестирования мы можем объединить эти модели с последовательным алгоритмом Монте-Карло. Мы применяем наш подход к двум областям: синтез программ редактирования текста и вывод программ 2D и 3D графики.