Return-Path: <michel@digirati.com.br> X-Spam-HitLevel: X-Spam-DCC: sonic.net: cs3.bu.edu 1156; Body=1 Fuz1=1 Fuz2=1 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on cs3.bu.edu X-Spam-Level: X-Spam-Status: No, score=-2.6 required=10.0 tests=AWL,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Pyzor: Received: from mta5.k8.com.br (mta5.k8.com.br [200.185.109.34]) by cs3.bu.edu (8.13.6/8.13.6) with ESMTP id k9NHWUWL020468; Mon, 23 Oct 2006 13:32:41 -0400 Received: from localhost (unknown [127.0.0.1]) by smtpa.k8.com.br (Postfix) with ESMTP id F3F512802FDD; Mon, 23 Oct 2006 13:25:54 +0000 (UTC) Received: from smtpa.k8.com.br ([127.0.0.1]) by localhost (mta5.k8.com.br [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 08653-01-99; Mon, 23 Oct 2006 10:25:54 -0300 (BRT) Received: from dark (c-71-232-158-11.hsd1.ma.comcast.net [71.232.158.11]) by smtpa.k8.com.br (Postfix) with ESMTP id 2D4952802FDB; Mon, 23 Oct 2006 13:25:53 +0000 (UTC) Message-ID: <003b01c6f6a6$cd744130$24b6a8c0@dark> From: "Michel Machado" <michel@digirati.com.br> To: "Assaf Kfoury" <kfoury@cs.bu.edu> Cc: <cs520@cs.bu.edu> References: <00e301c6f632$b1451490$16b6a8c0@dark> <453C4618.2010202@cs.bu.edu> Subject: Re: Evaluation Context - Derivation Date: Mon, 23 Oct 2006 09:26:06 -0400 Organization: Digirati Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=response Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2869 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2962 X-Virus-Scanned: amavisd-new at k8.com.br X-Clamav-Status: No Status: RO X-Status: A Content-Length: 2207 X-UID: 28 X-Keywords:
Hi Assaf,
Since E is just [ ], the output of plug is t. So, I have to use the
previous rules to evaluate t to a value.
I've thought Evaluation Context were an alternative to the rules we've
been working so far. If not, what is Evaluation Context intended to? Could
you show an application of it?
[ ]'s
Michel Machado
----- Original Message -----
From: "Assaf Kfoury" <kfoury@cs.bu.edu>
To: "Michel Machado" <michel@digirati.com.br>
Cc: <cs520@cs.bu.edu>
Sent: Monday, October 23, 2006 12:33 AM
Subject: Re: Evaluation Context - Derivation
> Let t be the term "(lam x. x + 2) 3". The whole of t is a beta-redex. So,
> the corresponding evaluation context E for t is simply [ ], consisting of
> a hole and nothing else. (I write E instead of E_cbv or E_cbn, for
> brevity.)
>
> Here plug(t,[ ]) = t. The whole of t is a beta-redex such that t -> (3 +
> 2).
>
> I said in lecture that the approach to evaluation (or operational
> semantics) based on evaluation contexts is "more scalable". What I meant
> is that if we extend the language by adding new programming features, then
> the operational semantics based on evaluation contexts "more easily scales
> up" to the extended language. This is not a theorem and there is no proof
> for it -- it is just an observation based on experience (mine and that of
> many other researchers in this area), but for which I did not give any
> examples in lecture.
>
> Scalability, i.e. the ability to extend a property from a smaller
> language to a larger language, has nothing to do with efficiency or
> "faster evaluation".
>
> Assaf
>
> Michel Machado wrote:
>
>> Hi Assaf,
>>
>> Could you write the derivation of the term (lam x. x + 2) 3 using
>> evaluation contexts?
>>
>> I don't see what the first Ecvb in plug function should be. I mean,
>> how can I complete the following expression in order to eval that term?
>>
>> plug(t, Ecbv) = plug((lam x. x + 2) 3, ????) = ????
>>
>> Do you have other links about evaluation contexts?
>>
>> You said in last class that evaluation contexts are more scalable, in
>> what sense is it more scalable? Does it lead to faster evaluation?
>>
>> [ ]'s
>> Michel Machado
>
>
>
This archive was generated by hypermail 2b29 : Thu Dec 14 2006 - 16:31:59 EST