(.using
  [library
   [lux "*"
    [program {"+" program:}]
    ["$" documentation {"+" documentation:}]
    ["[0]" debug]
    [control
     ["[0]" io]]
    [data
     [collection
      ["[0]" list ("[1]#[0]" monoid)]]]]]
  ["[0]" / "_"
   ["[1][0]" console]
   ["[1][0]" file]
   ["[1][0]" input "_"
    ["[1]/[0]" keyboard]]
   ["[1][0]" net]
   ["[1][0]" output "_"
    ["[1]/[0]" video "_"
     ["[1]/[0]" resolution]]]
   ["[1][0]" program]
   ["[1][0]" shell]])

(.def: .public documentation
  (.List $.Module)
  ($_ list#composite
      /console.documentation
      /file.documentation
      /input/keyboard.documentation
      /net.documentation
      /output/video/resolution.documentation
      /program.documentation
      /shell.documentation))
