function sc_readChar(port) {
    if (port === undefined) // we assume the port hasn't been given.
    port = SC_DEFAULT_IN; // THREAD: shared var...
    var t = port.readChar();
    return t === SC_EOF_OBJECT? t: new sc_Char(t);