Re: lambda application destroys sharing

From: Sergio Antoy <antoy_at_redstar.cs.pdx.edu>
Date: Mon, 04 Jan 2010 13:53:53 -0800

Sebastian Fischer writes:
> ...
> There are two derivations for test1 (or possibly more which lead to
> the same results):
>
> test1
> (Fapp)
> twice f1 10
> (Fapp)
> twice (let x = 1?2 in lambda1 x) 10
> (Fapp)
> twice (let x = 1 in lambda1 x) 10
> (Bind)
> twice (lambda1 1) 10
> (Fapp)
> lambda1 1 (lambda1 1 10)
> (Fapp)
> lambda1 1 11
> (Fapp)
> 12

The proposed derivations, such as the above one, make steps that
do not appear to be needed at the time in which they are made.
E.g., the following derivation is lazier. Loosely speaking, the
lazier you are, the more results you get. This might change the
claims on the number of results.

     test1
   (Fapp)
     twice f1 10
   (Fapp)
     f1 (f1 10)
   ...

Sergio
_______________________________________________
curry mailing list
curry_at_lists.RWTH-Aachen.DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/curry
Received on Tue Jan 05 2010 - 09:51:26 CET

This archive was generated by hypermail 2.3.0 : Mon Sep 23 2019 - 07:15:07 CEST