    "A singleton [[Tuple]] with the given [[element]] if the
     given element is non-null, or the [[empty sequence|Empty]]
     otherwise. This operation transforms an optional type `T?`
     to a sequence type `[]|[T]` allowing optional values to be
     the subject of operations defined for [[streams|Iterable]].

     For example, [[flat mapping|Iterable.flatMap]]
     `emptyOrSingleton()` reproduces the behavior of
     [[Iterable.coalesced]]. The expression

         { \"1.23\", \"foo\", \"5.67\", \"-1\", \"\" }
                 .map(parseFloat)
                 .flatMap(emptyOrSingleton<Float?>)

     produces the stream:

         { 1.23, 5.67, -1.0 }"
    see (`class Tuple`, `interface Empty`)
    shared []|[Element&Object] emptyOrSingleton<Element>
            (Element element) {
        if (exists element) {
            return [element];
        }
        else {
            return [];
        }
    }