[Agda] Type-checker evaluator performance
Peter Selinger
selinger at mathstat.dal.ca
Fri Feb 5 11:54:43 CET 2016
Dear Nils,
thanks for these references. All of them are interesting. But as far
as I can tell, none of these papers is exactly what is needed to
implement efficient call-by-name reduction.
The Crégut papers are about changing Krivine's machine to make it
produce normal forms (as opposed to head normal forms), but it does
not address the non-lazyness of Krivine's machine, i.e., the lack of
sharing and the ensuing repeated evaluation of an expression.
The Grégoire-Leroy paper is about the same thing, but for
call-by-value, so it is also not lazy.
The Benaissa-et-al paper is about a syntax for explicit
substitutions. I didn't read it carefully enough to be completely sure
whether the resulting sytem implements any kind of sharing, but I
rather get the impression that this is not the case. The example, the
reduction rule (in Figure 5) (a b)[c/] -> a[c/] b[c/] seems to
indicate that the (potentially large) term c is duplicated before it
is evaluated.
-- Peter
Nils Anders Danielsson wrote:
>
> On 2016-02-02 08:31, Jon Sterling wrote:
> > I hope this isn't off-topic, but what's the state of the art for this?
> > Krivine machines?
>
> I don't know, I know very little about this topic.
>
> Randy Pollack once informed me that LEGO uses the U-machine (due to
> Pierre Lescanne) for strong reduction:
>
> λν, a calculus of explicit substitutions which preserves strong
> normalisation
> Zine-El-Abidine Benaissa, Daniel Briaud, Pierre Lescanne and Jocelyne
> Rouyer-Degli
> http://doi.org/10.1017/S0956796800001945
>
> He also mentioned a machine due to Pierre Crégut:
>
> An abstract machine for Lambda-terms normalization
> Pierre Crégut
> http://doi.org/10.1145/91556.91681
>
> An extended version of the paper above:
>
> Strongly reducing variants of the Krivine abstract machine
> Pierre Crégut
> http://doi.org/10.1007/s10990-007-9015-z
>
> Is this the kind of thing you have in mind? Or maybe the following
> machine?
>
> A Compiled Implementation of Strong Reduction
> Benjamin Grégoire and Xavier Leroy
> http://doi.org/10.1145/583852.581501
>
> --
> /NAD
> _______________________________________________
> Agda mailing list
> Agda at lists.chalmers.se
> https://lists.chalmers.se/mailman/listinfo/agda
>
More information about the Agda
mailing list