JaroslavTulach: /* Futamura Projections */ - 2024-07-14 06:42:23

Futamura Projections

←Older revision Revision as of 06:42, 14 July 2024
Line 2: Line 2:
Famous work from 1971 by Yoshihiko [[Futamura]] relating programs '''P''', interpreters '''I''', partial evaluators '''E''', and
Famous work from 1971 by Yoshihiko [[Futamura]] relating programs '''P''', interpreters '''I''', partial evaluators '''E''', and
-
compilers '''C'''. There are three ''"Futamura Projections"'':
+
compilers '''C'''. There are three ''"[[Futamura]] Projections"'':
# E(I,P) → partially evaluate I(P) → emit C(P), a compiled program
# E(I,P) → partially evaluate I(P) → emit C(P), a compiled program
# E(E,I) → partially evaluate λP.I(P) → emit C, a compiler!
# E(E,I) → partially evaluate λP.I(P) → emit C, a compiler!

JaroslavTulach: /* Futamura Projections */ - 2024-07-14 06:42:00

Futamura Projections

←Older revision Revision as of 06:42, 14 July 2024
Line 1: Line 1:
== [[Futamura]] Projections ==
== [[Futamura]] Projections ==
-
Famous work from 1971 by Yoshihiko Futamura relating programs '''P''', interpreters '''I''', partial evaluators '''E''', and
+
Famous work from 1971 by Yoshihiko [[Futamura]] relating programs '''P''', interpreters '''I''', partial evaluators '''E''', and
compilers '''C'''. There are three ''"Futamura Projections"'':
compilers '''C'''. There are three ''"Futamura Projections"'':
# E(I,P) → partially evaluate I(P) → emit C(P), a compiled program
# E(I,P) → partially evaluate I(P) → emit C(P), a compiled program

JaroslavTulach: Futamora moved to Futamura - 2024-07-14 06:32:52

Futamora moved to Futamura

←Older revision Revision as of 06:32, 14 July 2024

JaroslavTulach: New page: == Futamura Projections == Famous work from 1971 by Yoshihiko Futamura relating programs '''P''', interpreters '''I''', partial evaluators '''E''', and compilers '''C'''. There are th... - 2024-07-14 06:32:28

New page: == Futamura Projections == Famous work from 1971 by Yoshihiko Futamura relating programs '''P''', interpreters '''I''', partial evaluators '''E''', and compilers '''C'''. There are th...

New page

== [[Futamura]] Projections ==

Famous work from 1971 by Yoshihiko Futamura relating programs '''P''', interpreters '''I''', partial evaluators '''E''', and
compilers '''C'''. There are three ''"Futamura Projections"'':
# E(I,P) → partially evaluate I(P) → emit C(P), a compiled program
# E(E,I) → partially evaluate λP.I(P) → emit C, a compiler!
# E(E,E) → partially evaluate λI.λP.I(P) → emit a compiler-compiler!

Formal strategy for building compilers from interpreters and specializers just like [[Truffle]]. The info comes from [http://venge.net/graydon/talks/CompilerTalk-2019.pdf 2019 compiler presentation].