    "A type capable of representing the values [[true]] and
     [[false]] of Boolean logic."
    by ("Gavin")
    tagged("Basic types")
    shared native abstract class Boolean
            of true | false {

        "The `Boolean` value of the given string representation
         of a boolean value, or `null` if the string does not
         represent a boolean value.

         Recognized string representations are the strings
         `\"true\"` and `\"false\"`."
        tagged("Basic types")
        since("1.3.1")
        shared static Boolean|ParseException parse(String string)
                => package.parseBoolean(string)
                else ParseException("illegal format for Boolean");

        shared new () {}
    }

    "A value representing truth in Boolean logic."
    tagged("Basic types")
    shared native object true
            extends Boolean() {
        string => "true";
        hash => 1231;
    }

    "A value representing falsity in Boolean logic."
    tagged("Basic types")
    shared native object false
            extends Boolean() {
        string => "false";
        hash => 1237;
    }