I think the read & write ops in core.ops are obsolete as well; the patch below removes them.
Simon --- core.ops.old Tue Jul 8 10:18:46 2003 +++ core.ops Tue Jul 8 10:19:36 2003 @@ -86,7 +86,6 @@ =cut - ######################################## =item B<err>(out INT) @@ -113,47 +112,6 @@ ######################################## - -######################################## - -=item B<read>(out INT, in INT) - -Read an INTVAL from file descriptor $2 into $1. - -=item B<read>(out NUM, in INT) - -Read a FLOATVAL from file descriptor $2 into $1. - -=item B<read>(out STR, in INT, in INT) - -Read $3 bytes from file descriptor $2 into string $1. - -=cut - -inline op read(out INT, in INT) { - read($2, &($1), sizeof(INTVAL)); - goto NEXT(); -} - -inline op read(out NUM, in INT) { - read($2, &($1), sizeof(FLOATVAL)); - goto NEXT(); -} - -op read(out STR, in INT, in INT) { - STRING *s; - UINTVAL len = $3; - - s = string_make(interpreter, NULL, len, NULL, 0, NULL); - read($2, s->strstart, len); - s->bufused = len; - $1 = s; - goto NEXT(); -} - - -######################################## - =item B<time>(out INT) Puts the current system time (represented as a whole number of seconds) @@ -181,39 +139,6 @@ goto NEXT(); } - -######################################## - -=item B<write>(in INT, in INT) - -=item B<write>(in INT, in NUM) - -=item B<write>(in INT, in STR) - -Write $2 to file descriptor $1. - -=cut - -op write(in INT, in INT) { - INTVAL i = (INTVAL)$2; - write($1, &i, sizeof(INTVAL)); - goto NEXT(); -} - -op write(in INT, in NUM) { - FLOATVAL * f = &($2); - write($1, f, sizeof(FLOATVAL)); - goto NEXT(); -} - -op write(in INT, in STR) { - STRING * s = $2; - UINTVAL count = string_length(s); - write($1, s->strstart, count); - goto NEXT(); -} - - =back =cut