# HG changeset patch # User Adam Chlipala # Date 1258391935 18000 # Node ID 2a34c4dc6a100983f63772761cdbc7f6474cda5b # Parent 13620dfd5f973cd0cbe7f428ed7fab80b668bdd1 Port Interps diff -r 13620dfd5f97 -r 2a34c4dc6a10 src/Impure.v --- a/src/Impure.v Mon Nov 16 12:08:18 2009 -0500 +++ b/src/Impure.v Mon Nov 16 12:18:55 2009 -0500 @@ -1,4 +1,4 @@ -(* Copyright (c) 2008, Adam Chlipala +(* Copyright (c) 2008-2009, Adam Chlipala * * This work is licensed under a * Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 diff -r 13620dfd5f97 -r 2a34c4dc6a10 src/Intensional.v --- a/src/Intensional.v Mon Nov 16 12:08:18 2009 -0500 +++ b/src/Intensional.v Mon Nov 16 12:18:55 2009 -0500 @@ -1,4 +1,4 @@ -(* Copyright (c) 2008, Adam Chlipala +(* Copyright (c) 2008-2009, Adam Chlipala * * This work is licensed under a * Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 diff -r 13620dfd5f97 -r 2a34c4dc6a10 src/Interps.v --- a/src/Interps.v Mon Nov 16 12:08:18 2009 -0500 +++ b/src/Interps.v Mon Nov 16 12:18:55 2009 -0500 @@ -1,4 +1,4 @@ -(* Copyright (c) 2008, Adam Chlipala +(* Copyright (c) 2008-2009, Adam Chlipala * * This work is licensed under a * Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 @@ -85,8 +85,8 @@ | t1 --> t2 => typeDenote t1 -> typeDenote t2 end. - Fixpoint expDenote t (e : exp typeDenote t) {struct e} : typeDenote t := - match e in (exp _ t) return (typeDenote t) with + Fixpoint expDenote t (e : exp typeDenote t) : typeDenote t := + match e with | Var _ v => v | Const n => n @@ -113,8 +113,8 @@ Section cfold. Variable var : type -> Type. - Fixpoint cfold t (e : exp var t) {struct e} : exp var t := - match e in exp _ t return exp _ t with + Fixpoint cfold t (e : exp var t) : exp var t := + match e with | Var _ v => #v | Const n => ^n @@ -260,8 +260,8 @@ | t1 ++ t2 => typeDenote t1 + typeDenote t2 end%type. - Fixpoint expDenote t (e : exp typeDenote t) {struct e} : typeDenote t := - match e in (exp _ t) return (typeDenote t) with + Fixpoint expDenote t (e : exp typeDenote t) : typeDenote t := + match e with | Var _ v => v | Const n => n @@ -312,14 +312,15 @@ | _ => tt end. - Definition pairOut t1 t2 (e : exp var (t1 ** t2)) : option (exp var t1 * exp var t2) := + Definition pairOut t1 t2 (e : exp var (t1 ** t2)) + : option (exp var t1 * exp var t2) := match e in exp _ t return pairOutType t with | Pair _ _ e1 e2 => Some (e1, e2) | _ => pairOutDefault _ end. - Fixpoint cfold t (e : exp var t) {struct e} : exp var t := - match e in exp _ t return exp _ t with + Fixpoint cfold t (e : exp var t) : exp var t := + match e with | Var _ v => #v | Const n => ^n