From 62b3abfcc014ca1c19d62aacdd497f6a250b372c Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sun, 25 Jul 2021 03:12:17 -0400 Subject: Better syntax for "library/lux.^multi". --- stdlib/source/program/scriptum.lux | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'stdlib/source/program/scriptum.lux') diff --git a/stdlib/source/program/scriptum.lux b/stdlib/source/program/scriptum.lux index cdbdb0569..708db73dd 100644 --- a/stdlib/source/program/scriptum.lux +++ b/stdlib/source/program/scriptum.lux @@ -43,7 +43,7 @@ (-> Nat Text) (case (text.nth id ..name_options) (#.Some char) - (text.from_code char) + (text.of_code char) #.None (format (parameter_type_name (n./ name_options_count id)) @@ -76,8 +76,8 @@ _ (|> type_var_names - (sequence.filter (function (_ var_name) - (not (list.member? text.equivalence type_function_arguments var_name)))) + (sequence.only (function (_ var_name) + (not (list.member? text.equivalence type_function_arguments var_name)))) (sequence.nth arg_id)))) type_func_name)) @@ -116,7 +116,7 @@ (format "(primitive " (%.text name) " " (|> params (list\map (pprint_type_definition level type_func_info #.None module signature? recursive_type?)) (text.join_with " ")) ")")) [_ (#.Sum _)] - (let [members (type.flatten_variant type)] + (let [members (type.flat_variant type)] (case tags #.Nil (format "(| " @@ -131,7 +131,7 @@ (list\map (function (_ [[_ t_name] type]) (case type (#.Product _) - (let [types (type.flatten_tuple type)] + (let [types (type.flat_tuple type)] (format "(#" t_name " " (|> types (list\map (pprint_type_definition level type_func_info #.None module signature? recursive_type?)) @@ -143,7 +143,7 @@ (text.join_with text.new_line)))) [_ (#.Product _)] - (let [members (type.flatten_tuple type)] + (let [members (type.flat_tuple type)] (case tags #.Nil (format "[" (|> members (list\map (pprint_type_definition level type_func_info #.None module signature? recursive_type?)) (text.join_with " ")) "]") @@ -161,7 +161,7 @@ (format "{" member_docs "}"))))) [_ (#.Function input output)] - (let [[ins out] (type.flatten_function type)] + (let [[ins out] (type.flat_function type)] (format "(-> " (|> ins (list\map (pprint_type_definition level type_func_info #.None module signature? recursive_type?)) (text.join_with " ")) " " (pprint_type_definition level type_func_info #.None module signature? recursive_type? out) @@ -189,14 +189,14 @@ _ (format text.new_line (prefix_lines " " body_doc))) ")"))]) - ([#.UnivQ "All" type.flatten_univ_q] - [#.ExQ "Ex" type.flatten_ex_q]) + ([#.UnivQ "All" type.flat_univ_q] + [#.ExQ "Ex" type.flat_ex_q]) [true (#.Apply (#.Parameter 1) (#.Parameter 0))] (product.left type_func_info) [_ (#.Apply param fun)] - (let [[type_func type_arguments] (type.flatten_application type)] + (let [[type_func type_arguments] (type.flat_application type)] (format "(" (pprint_type_definition level type_func_info tags module signature? recursive_type? type_func) " " (|> type_arguments (list\map (pprint_type_definition level type_func_info #.None module signature? recursive_type?)) (text.join_with " ")) ")")) [_ (#.Named [_module _name] type)] @@ -217,15 +217,15 @@ (format "(primitive " (%.text name) " " (|> params (list\map (pprint_type level type_func_name module)) (list.interpose " ") (text.join_with "")) ")")) (#.Sum _) - (let [members (type.flatten_variant type)] + (let [members (type.flat_variant type)] (format "(| " (|> members (list\map (pprint_type level type_func_name module)) (list.interpose " ") (text.join_with "")) ")")) (#.Product _) - (let [members (type.flatten_tuple type)] + (let [members (type.flat_tuple type)] (format "[" (|> members (list\map (pprint_type level type_func_name module)) (list.interpose " ") (text.join_with "")) "]")) (#.Function input output) - (let [[ins out] (type.flatten_function type)] + (let [[ins out] (type.flat_function type)] (format "(-> " (|> ins (list\map (pprint_type level type_func_name module)) (list.interpose " ") (text.join_with "")) " " @@ -249,11 +249,11 @@ (format "(" " " "[" (|> args (list.interpose " ") (text.join_with "")) "]" (format " " body_doc) ")"))]) - ([#.UnivQ "All" type.flatten_univ_q] - [#.ExQ "Ex" type.flatten_ex_q]) + ([#.UnivQ "All" type.flat_univ_q] + [#.ExQ "Ex" type.flat_ex_q]) (#.Apply param fun) - (let [[type_func type_arguments] (type.flatten_application type)] + (let [[type_func type_arguments] (type.flat_application type)] (format "(" (pprint_type level type_func_name module type_func) " " (|> type_arguments (list\map (pprint_type level type_func_name module)) (list.interpose " ") (text.join_with "")) ")")) (#.Named [_module _name] type) @@ -505,7 +505,7 @@ (do {! meta.monad} [all_modules meta.modules #let [lux_modules (|> all_modules - (list.filter (function.compose lux_module? product.left)) + (list.only (function.compose lux_module? product.left)) (list.sort name_sort))] lux_exports (monad.map ! (function.compose meta.exports product.left) lux_modules) -- cgit v1.2.3