Talk:Partial evaluation

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Why isn't this just Compilation?[edit]

As it stands, this article almost requires {{Importance-section}}.

It should mention, by way of example, this is (as I understand it) how some Lisps (and probably many other interpreted languages, as implied by the existing article content) compile stand-alone executable programs, as well as being the process (at least to some extent) in "normal" compilation, and especially for an optimising compiler, not just a theory.

Of course this is notable. Sexy stuff. See MetaML (MetaOCaml nowadays) for example. (talk) 15:42, 19 March 2009 (UTC)

I'd be bold but I don't have time or sources at the moment, but I have wikilinked the above to help save someone time :-) Mark Hurd 00:48, 16 February 2006 (UTC)

You're kidding. This is a technique whose applications include program optimisation, compilation and compiler generation. It may not be well-known but it is definitely important. -- Derek Ross | Talk 06:54, 14 April 2009 (UTC)

2nd Futamura projection == Hart & Levin compiler?[edit]

Is the second Futamura projection equivalent to the Hart & Levin strategy used to create the first self-hosting compiler? "Compiler generation by self-application" sounds like just what they did: write a compiler in the source language and run it on itself in an interpreter for that language. --FOo 06:17, 15 April 2006 (UTC)

I read the relevant article and no, they are alternatives. The second projection does "Compiler ← Specializer(Specializer, Interpreter)", while Hart & Levin did "Compiler ← Interpreter(Compiler-source, Compiler-source)". Hart & Levin's strategy just needs the compiler written in its own language. The second projection needs a good specializer, which I imagine is much harder to write if not incomputable in general. Hashproduct (talk) 06:25, 4 February 2009 (UTC)


Futamura's idea is stunning. -- Derek Ross | Talk 05:00, 14 April 2009 (UTC)


Anyone mind me mentioning the google search term Similix here? It's downloadable, but I didn't write it, I used it back in the day Curtis02 (talk) 09:56, 29 August 2010 (UTC)

I doubt that anyone will mind provided that you explain what it is and how it fits into the history of partial evaluators. It seems to be notable. -- Derek Ross | Talk 22:40, 29 August 2010 (UTC)
Well, the google hits like or are pretty clear: it's a partial evaluator for the functionally pure subset of Scheme (programming language). I dunno where it fits in the history, though. --Gwern (contribs) 18:58 24 September 2010 (GMT)