(.using
  [library
   [lux {"-" Definition}
    ["$" documentation {"+" documentation:}]
    [data
     [text
      ["%" format {"+" format}]]
     [collection
      ["[0]" list]]]]]
  [\\library
   ["[0]" /]])

(documentation: /.Definition
  "Syntax for a constant definition.")

(documentation: /.parser
  "A reader that first macro-expands and then analyses the input Code, to ensure it is a definition."
  [(parser compiler)])

(documentation: /.typed
  "Only works for typed definitions."
  [(typed compiler)])

(.def: .public documentation
  (.List $.Module)
  ($.module /._
            ""
            [..Definition
             ..parser
             ..typed
             ($.default /.equivalence)
             ($.default /.lacks_type)
             ($.default /.format)]
            []))
