System.java
package church.lang;

public class System {
    // Check that this is buffered internally.
    // Can't convert to lambda as references to both 'this' and 'output' would be illegal in lambdas.
    public static ByteStream OUT = new ByteStream() {
        public ByteStream write(byte b) {
            java.lang.System.out.write(b);
            return this;
        }
    };

    public static <T> java.util.stream.Stream<T> stream(T[] a) {
        return java.util.Arrays.stream(a);
    }
}