projects
/
coq-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
restore HaskWeakToStrong functionality that I broke over the weekend
[coq-hetmet.git]
/
src
/
HaskWeakVars.v
diff --git
a/src/HaskWeakVars.v
b/src/HaskWeakVars.v
index
8d84610
..
8a77e09
100644
(file)
--- a/
src/HaskWeakVars.v
+++ b/
src/HaskWeakVars.v
@@
-14,10
+14,10
@@
Require Import HaskCoreTypes.
Require Import HaskWeakTypes.
(* TO DO: finish this *)
Require Import HaskWeakTypes.
(* TO DO: finish this *)
-Inductive WeakCoercion : Type := weakCoercion : WeakType -> WeakType -> CoreCoercion -> WeakCoercion.
+Inductive WeakCoercion : Type := weakCoercion : Kind -> WeakType -> WeakType -> CoreCoercion -> WeakCoercion.
(* a WeakCoerVar just wraps a CoreVar and tags it with the pair of types amongst which it coerces *)
(* a WeakCoerVar just wraps a CoreVar and tags it with the pair of types amongst which it coerces *)
-Inductive WeakCoerVar := weakCoerVar : CoreVar -> WeakType -> WeakType -> WeakCoerVar.
+Inductive WeakCoerVar := weakCoerVar : CoreVar -> Kind -> WeakType -> WeakType -> WeakCoerVar.
(* a WeakExprVar just wraps a CoreVar and tags it with the type of its value *)
Inductive WeakExprVar := weakExprVar : CoreVar -> WeakType -> WeakExprVar.
(* a WeakExprVar just wraps a CoreVar and tags it with the type of its value *)
Inductive WeakExprVar := weakExprVar : CoreVar -> WeakType -> WeakExprVar.
@@
-37,9
+37,9
@@
Definition weakTypeVarToKind (tv:WeakTypeVar) : Kind :=
Definition weakVarToCoreVar (wv:WeakVar) : CoreVar :=
match wv with
Definition weakVarToCoreVar (wv:WeakVar) : CoreVar :=
match wv with
- | WExprVar (weakExprVar v _ ) => v
- | WTypeVar (weakTypeVar v _ ) => v
- | WCoerVar (weakCoerVar v _ _ ) => v
+ | WExprVar (weakExprVar v _ ) => v
+ | WTypeVar (weakTypeVar v _ ) => v
+ | WCoerVar (weakCoerVar v _ _ _) => v
end.
Coercion weakVarToCoreVar : WeakVar >-> CoreVar.
end.
Coercion weakVarToCoreVar : WeakVar >-> CoreVar.