diff options
Diffstat (limited to '')
-rw-r--r-- | stdlib/source/lux/type/implicit.lux | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/stdlib/source/lux/type/implicit.lux b/stdlib/source/lux/type/implicit.lux index b38ade514..8c1718d84 100644 --- a/stdlib/source/lux/type/implicit.lux +++ b/stdlib/source/lux/type/implicit.lux @@ -286,7 +286,7 @@ (def: (var? input) (-> Code Bit) (case input - [_ (#.Symbol _)] + [_ (#.Identifier _)] #1 _ @@ -300,14 +300,14 @@ (-> Instance Code) (case dependencies #.Nil - (code.symbol constructor) + (code.identifier constructor) _ - (` ((~ (code.symbol constructor)) (~+ (list/map instance$ dependencies)))))) + (` ((~ (code.identifier constructor)) (~+ (list/map instance$ dependencies)))))) (syntax: #export (::: - {member s.symbol} - {args (p.alt (p.seq (p.some s.symbol) s.end!) + {member s.identifier} + {args (p.alt (p.seq (p.some s.identifier) s.end!) (p.seq (p.some s.any) s.end!))}) {#.doc (doc "Automatic structure selection (for type-class style polymorphism)." "This feature layers type-class style polymorphism on top of Lux's signatures and structures." @@ -345,8 +345,8 @@ (#.Cons chosen #.Nil) (wrap (list (` (:: (~ (instance$ chosen)) - (~ (code.local-symbol (product.right member))) - (~+ (list/map code.symbol args)))))) + (~ (code.local-identifier (product.right member))) + (~+ (list/map code.identifier args)))))) _ (macro.fail (format "Too many options available: " @@ -359,7 +359,7 @@ (do @ [labels (|> (macro.gensym "") (list.repeat (list.size args)) (monad.seq @))] (wrap (list (` (let [(~+ (|> (list.zip2 labels args) (list/map join-pair) list/join))] - (..::: (~ (code.symbol member)) (~+ labels))))))) + (..::: (~ (code.identifier member)) (~+ labels))))))) )) (def: (implicit-bindings amount) |