Stuck macros: deterministically interleaving macro-expansion and typechecking
Автор: Compose Conference
Загружено: 2019-06-24
Просмотров: 836
Compose NYC 2019
Speaker: Samuel Gélineau
A new breed of functional programming languages is emerging: strongly-typed macro languages, such as Hackett and Typer. Those languages feature both macros, type inference, and most importantly, the combination of the two: macros which can interrogate the type inference system in order to decide which code to generate. Both languages propose to do so by interleaving macro-expansion and type-checking, but doing so naively leads to a non-deterministic outcome: the same program may be accepted by one version of the compiler and rejected by another! In this talk, I will explain what causes this non-determinism, and how allowing macros to get “stuck” could solve the problem.
Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: