alms 0.6.1 → 0.6.2
raw patch · 3 files changed
+10/−8 lines, 3 files
Files
- Makefile +1/−1
- alms.cabal +1/−1
- src/Statics/Coercion.hs +8/−6
Makefile view
@@ -63,7 +63,7 @@ $(RM) html -VERSION = 0.6.1+VERSION = 0.6.2 DISTDIR = alms-$(VERSION) TARBALL = $(DISTDIR).tar.gz
alms.cabal view
@@ -1,5 +1,5 @@ Name: alms-Version: 0.6.1+Version: 0.6.2 Copyright: 2011, Jesse A. Tov Cabal-Version: >= 1.8 License: BSD3
src/Statics/Coercion.hs view
@@ -15,6 +15,7 @@ import Prelude () import qualified Data.Map as M+import qualified Data.Set as S -- | Location to use for constructed code _loc :: Loc@@ -93,12 +94,13 @@ build μ (TyApp tc1 [σf1, qf, σf2]) (TyApp tc2 [σt1, qt, σt2]) | tc1 == tcFun, tc2 == tcFun = do- dom ← build μ σt1 σf1- cod ← build μ σf2 σt2- let which = contractIdent $- if qualifier qf ⊑ qualifier qt- then "func"- else "affunc"+ dom ← build μ σt1 σf1+ cod ← build μ σf2 σt2+ which ← contractIdent <$>+ if qualifier qt == QeU S.empty+ && qualifier qf /= QeU S.empty+ then return "affunc"+ else do qf ⊏: qt; return "func" return [ex| $qvid:which $dom $cod |] build _ σfrom σto