Add translations for signal binops
This commit is contained in:
parent
41a383b31c
commit
22a63628fe
1 changed files with 4 additions and 2 deletions
|
@ -1,4 +1,3 @@
|
|||
|
||||
module CompileToJS (showErr, jsModule) where
|
||||
|
||||
import Ast
|
||||
|
@ -265,8 +264,11 @@ binop (o:p) e1 e2
|
|||
e2 ++ ")[0]; return ord==='LT' || ord==='EQ'; }()"
|
||||
">=" -> "function() { var ord = compare(" ++ e1 ++ ")(" ++
|
||||
e2 ++ ")[0]; return ord==='GT' || ord==='EQ'; }()"
|
||||
"<~" -> "lift" ++ parens e1 ++ parens e2
|
||||
"~" -> "lift2(function(f){return function(x){return f(x);};})" ++
|
||||
parens e1 ++ parens e2
|
||||
_ | elem (o:p) ops -> parens (e1 ++ (o:p) ++ e2)
|
||||
| otherwise -> concat [ "$op['", o:p, "']"
|
||||
, parens e1, parens e2 ]
|
||||
|
||||
append e1 e2 = "Value.append" ++ parens (e1 ++ "," ++ e2)
|
||||
append e1 e2 = "Value.append" ++ parens (e1 ++ "," ++ e2)
|
||||
|
|
Loading…
Reference in a new issue