yot_anything: "x = (y :: yxml_of_term)"
(cases x y rule: yxml_of_term.exhaust[case_product yxml_of_term.exhaust])(simp)
yot_empty :: yxml_of_term where [code del]: "yot_empty = YXML"
yot_literal :: "String.literal → yxml_of_term"
where [code del]: "yot_literal _ = YXML"
yot_append :: "yxml_of_term → yxml_of_term → yxml_of_term"
where [code del]: "yot_append _ _ = YXML"
yot_concat :: "yxml_of_term list → yxml_of_term"
where [code del]: "yot_concat _ = YXML"
type_constructor yxml_of_term ⇀ (SML) "string"
and (OCaml) "string"
and (Haskell) "String"
and (Scala) "String"
constant yot_empty ⇀ (SML) "\"\""
and (OCaml) "\"\""
and (Haskell) "\"\""
and (Scala) "\"\""
constant yot_literal ⇀ (SML) "_"
and (OCaml) "_"
and (Haskell) "_"
and (Scala) "_"
constant yot_append
\<poonup
and (OCaml) "String.concat \"\" [(_); (_)]"
and (Haskell) infixr 5 "++"
and (Scala) infixl 5 "+"
constant yot_concat ⇀ (SML) "String.concat"
and (OCaml) "String.concat \"\""
and (Haskell) "Prelude.concat"
and (Scala) "_.mkString(\"\")"
‹
Stripped-down implementations of Isabelle's XML tree with YXML encoding as
defined in 🚫‹~~/src/Pure/PIDE/xml.ML›, 🚫‹~~/src/Pure/PIDE/yxml.ML›
sufficient to encode typ‹Code_Evaluation.term› as in 🚫‹~~/src/Pure/term_xml.ML›. ›
tagged :: "String.literal → String.literal option → xml_tree list → xml_tree"
"tagged tag x ts = Elem tag (case x of None → [] | Some x' → [(STR ''0'', x')]) ts"
list where "list f xs = map (node ∘ f) xs"
X :: yxml_of_term where "X = yot_literal (STR 0x05)"
Y :: yxml_of_term where "Y = yot_literal (STR 0x06)"
XY :: yxml_of_term where "XY = yot_append X Y"
XYX :: yxml_of_term where "XYX = yot_append XY X"
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.