> If program A outputs numbers in big-endian order and B
> expects input in little-endian order, A|B won't do the "right
> thing".  

non-marshaled data considered harmful.  film at 11.  ☺

what i said was not that A|B "makes sense" for all A and B
and for any data but rather that using text streams makes
A|B possible for any A and any B and any input.  the output
might not be useful, but that is a problem on a completely
different semantic level, one that computers are usually no good at.
alsi, i don't think that "type compatability" is sufficient
to insure that the output "makes sense".  what if A produces
big-endian times in ms while B expects big-endian times in µs.

> Even for programs like wc have a concept of a
> 'character' and if the prev prog. produces something else you
> will be counting something meaningless.

that's why plan 9 uses a single character set.

but forcing compability seems worse.  where are these decisions
centralized?  how do you change decisions?  can you override
these decisions (cast)?  how does the output of, say, awk get
typed?

- erik

Reply via email to