Connection connectToHost(String host, int port) Addr addr = resolve(host, TypeA).first if(addr.isNull) return FailedConnection; return connect(addr, port) Connection connectToHost(String host, int port) list list = resolve(host, TypeA) foreach(addr, list) Connection c = connect(addr, port) if(c != FailedConnection) return c return FailedConnection