@@ -32,45 +32,56 @@ is :: [String] -> String -> Canonical -> Bool
3232is home name var =
3333 var == Canonical (Module home) name
3434
35−isJavaScript :: Canonical -> Bool
36−isJavaScript = is ["JavaScript"] "Value"
3735
3836isJson :: Canonical -> Bool
39−isJson = is ["Json"] "Value"
37+isJson =
38+ is ["Json", "Encode"] "Json"
39+
4040
4141isMaybe :: Canonical -> Bool
42−isMaybe = is ["Maybe"] "Maybe"
42+isMaybe =
43+ is ["Maybe"] "Maybe"
4344
4445isArray :: Canonical -> Bool
45−isArray = is ["Array"] "Array"
46+isArray =
47+ is ["Array"] "Array"
48+
4649
4750isSignal :: Canonical -> Bool
48−isSignal = is ["Signal"] "Signal"
51+isSignal =
52+ is ["Signal"] "Signal"
53+
4954
5055isList :: Canonical -> Bool
5156isList v =
5257 v == Canonical BuiltIn "_List"
5358
59+
5460isTuple :: Canonical -> Bool
5561isTuple v =
5662 case v of
5763 Canonical BuiltIn name -> Help.isTuple name
5864 _ -> False
5965
66+
6067isPrimitive :: Canonical -> Bool
6168isPrimitive v =
6269 case v of
6370 Canonical BuiltIn name -> name `elem` ["Int","Float","String","Bool"]
6471 _ -> False
6572
73+
6674isPrim :: String -> Canonical -> Bool
6775isPrim prim v =
6876 case v of
6977 Canonical BuiltIn name -> name == prim
7078 _ -> False
7179
80+
7281isText :: Canonical -> Bool
73−isText = is ["Text"] "Text"
82+isText =
83+ is ["Text"] "Text"
84+
7485
7586class ToString a where
7687 toString :: a -> String