From 891b1cfc82322f8017f0a4f6b707d6fe52024545 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Fri, 3 Sep 2021 21:51:30 -0400 Subject: Unified tuple and record syntax. --- stdlib/source/program/aedifex/format.lux | 33 +++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) (limited to 'stdlib/source/program/aedifex/format.lux') diff --git a/stdlib/source/program/aedifex/format.lux b/stdlib/source/program/aedifex/format.lux index 1933d2be0..93eca461f 100644 --- a/stdlib/source/program/aedifex/format.lux +++ b/stdlib/source/program/aedifex/format.lux @@ -5,7 +5,7 @@ ["." text ("#\." equivalence)] [collection ["." dictionary (#+ Dictionary)] - ["." list ("#\." functor)] + ["." list ("#\." monad)] ["." set (#+ Set)]]] [macro ["." code] @@ -23,31 +23,31 @@ (def: (license [name url type]) (Format /.License) - (`' {#name (~ (code.text name)) + (`' [#name (~ (code.text name)) #url (~ (code.text url)) #type (~ (case type #/.Repo (' #repo) #/.Manual - (' #manual)))})) + (' #manual)))])) (def: (organization [name url]) (Format /.Organization) - (`' {#name (~ (code.text name)) - #url (~ (code.text url))})) + (`' [#name (~ (code.text name)) + #url (~ (code.text url))])) (def: (developer [name url organization]) (Format /.Developer) (case organization #.None - (`' {#name (~ (code.text name)) - #url (~ (code.text url))}) + (`' [#name (~ (code.text name)) + #url (~ (code.text url))]) (#.Some value) - (`' {#name (~ (code.text name)) + (`' [#name (~ (code.text name)) #url (~ (code.text url)) - #organization (~ (..organization value))}))) + #organization (~ (..organization value))]))) (def: contributor (Format /.Contributor) @@ -60,8 +60,9 @@ (Format Aggregate) (|>> dictionary.entries (list\each (function (_ [key value]) - [(code.local_tag key) value])) - code.record)) + (list (code.local_tag key) value))) + list\conjoint + code.tuple)) (def: empty Aggregate @@ -101,8 +102,9 @@ (|> value dictionary.entries (list\each (function (_ [key value]) - [(key_format key) (value_format value)])) - code.record) + (list (key_format key) (value_format value)))) + list\conjoint + code.tuple) aggregate))) (def: (info value) @@ -167,5 +169,6 @@ (Format Project) (|>> dictionary.entries (list\each (function (_ [key value]) - [(code.text key) (..profile value)])) - code.record)) + (list (code.text key) (..profile value)))) + list\conjoint + code.tuple)) -- cgit v1.2.3