diff options
| author | hallgren <hallgren@chalmers.se> | 2012-11-16 13:47:10 +0000 |
|---|---|---|
| committer | hallgren <hallgren@chalmers.se> | 2012-11-16 13:47:10 +0000 |
| commit | 7d616c01b46c7a50b28c93dc25539a1ed916a536 (patch) | |
| tree | 99981fbcc44746d79974b69b9444d3b77cb224b7 /src/compiler/GF/Compile/Compute | |
| parent | 67ca0a1eae3875cb72c4a89fe7d0f454722c3b59 (diff) | |
new-comp: rewrite f (x|y) into (f x|f y)
With this change, all languages in molto/mgl/mixture except German and Polish
can be compiled.
Diffstat (limited to 'src/compiler/GF/Compile/Compute')
| -rw-r--r-- | src/compiler/GF/Compile/Compute/ConcreteNew.hs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/compiler/GF/Compile/Compute/ConcreteNew.hs b/src/compiler/GF/Compile/Compute/ConcreteNew.hs index 49752aebb..7380cccad 100644 --- a/src/compiler/GF/Compile/Compute/ConcreteNew.hs +++ b/src/compiler/GF/Compile/Compute/ConcreteNew.hs @@ -265,8 +265,12 @@ vapply v vs = vbeta bt f (v:vs) = case (bt,v) of - (Implicit,VImplArg v) -> vapply (f v) vs - (Explicit, v) -> vapply (f v) vs + (Implicit,VImplArg v) -> ap v + (Explicit, v) -> ap v + where + ap (VFV avs) = VFV [vapply (f v) vs|v<-avs] + ap v = vapply (f v) vs + {- beta env b x t (v:vs) = case (b,v) of |
