2009/11/11 Changying Li <[email protected]>: > in the guile manual: > -- Scheme Procedure: format dest fmt [args...] > Write output specified by the FMT string to DEST. DEST can be an > output port, `#t' for `current-output-port' (*note Default > Ports::), a number for `current-error-port', or `#f' to return the > output as a string. > > what's the meaning of NUMBER? > I want to write things to error port, so I write > (format 1 "hello") > > standard input:5:1: In procedure simple-format in expression (format 1 > "hello"): > standard input:5:1: Wrong type argument in position 1: 1 > ABORT: (wrong-type-arg) > > > it work when I use (format (current-error-port) "hello") > > Is there something wrong in the guile manual ?
That would be my guess. I assume that once upon a time, an integer was interpreted as a file or socket number, but that this code was later disabled, and the documentation was not changed. I guess that supporting fileno would have made an mswindows version difficult -- besides, raw fileno numbers are kind of a bad idea in this day and age. --linas
