[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
DECnet file streams
Warning to other Symbolics DECnet (DNA) users:
I have installed the new DNA 10.33, and several file problems are fixed.
I heartly recommend it, if you have VAXen.
However, the form:
(with-open-file (s "MYVAX:VAX$disk:[myusername]foo.dat" :direction :output)
(format s "abc~%def~%ghijk~%"))
does not generate a file like:
" as it should, instead it generates a file like:
"abcdefghijk" which is not correct.
This has been reported to Symbolics for 4 months. In the mean time I have
managed to debug the problem. (Thank God for a delux debugger) The definition
of :open for a dna:dna-output-character-stream does not default the :character
parameter as defined in the "Reference Guide to Streams, Files, and I/O"
on page 92. In short t is not the default, as it is in ChaosNet and LMFS
streams. The options to woth-open-file must include :characters t to get
the right answer.
It is really unfortunate that users must slog through the object with
the debugger to fix things like this. What kind of test cases did Symbolics
do to let such a simple thing slip through?? This could be fixed in the
source by the addition of 4 characters "(",")"," ","t"; but NOO the source
to this powerfully busted program is restricted. As a result I have to
modify the 50 references to with-open-stream that I have spread across
20 files to inforce a default that Symbolics made "optionally default".
This is not the kind of support that I expect from a company that claims
the their source is too good for me to read, even after I sign their
license agreements. I know they had problems with MIT, or some other
place that people disagreed with them. Personally I disagree with their
stupid source policy, but I write programs for a living. I work for a
big company. If we leak your stuff out, SUE US. We just don't do whatever
we please, we abide by the contracts we sign. Sometimes when I see how
long it takes to get a buggy DECnet patch tape out I wonder how seriously
Symbolics takes its contractual agreements to support the software we
paid good money for.