Verified Commit 6a6bf15b authored by Camil Staps's avatar Camil Staps 🚀

Copy editing

parent 470116af
......@@ -20,7 +20,7 @@ builtin_syntax =
, bs_define_graph
, bs_dotdot
, bs_exists
, bs_eadt
, bs_extensible_adt
, bs_forall
, bs_foreign
, bs_funcdep
......@@ -155,16 +155,21 @@ bs_exists =
, syntax_examples = [EX ":: List = E.e: Cons e List | Nil\nStart = Cons 5 (Cons 'a' (Cons \"abc\" Nil))"]
}
bs_eadt =
{ syntax_title = "extensible algebraic data types"
bs_extensible_adt =
{ syntax_title = "extensible algebraic data type"
, syntax_patterns = ["..", "|"]
, syntax_code = [":: T | ..", ":: T = .."]
, syntax_description = "Extensible algebraic data types are ADT's that can be extended in other modules. One module can declare the ADT as extendible by adding the .. constructior. Other modules can then extend it. It is not possible to derive functions for EADTs"
, syntax_code = [":: T | ...", ":: T = ... | ... | .."]
, syntax_description = join " "
[ "Extensible algebraic data types are ADTs that can be extended in other modules."
, "One module can declare the ADT as extendible by adding the `..` constructor."
, "Other modules can then extend it."
, "It is not possible to derive functions for EADTs."
]
, syntax_doc_locations = []
, syntax_examples = map EX
[ ":: T = .. //Declare T as an EADT"
, ":: T = C1 | .. //Declare T to be an EADT with at least the constructor C1"
, ":: T | C //Extend the EADT T with constructor C"
[ ":: T = .. // Declare T as an EADT"
, ":: T = C1 | .. // Declare T to be an EADT with at least the constructor C1"
, ":: T | C // Extend the EADT T with constructor C"
]
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment