I don't think files as pipes would be "transparent to the user." Reading an empty pipe causes a wait until the bytes requested are available, unless the pipe is closed first. Reading to the end of a file results in an end-of-file error. This problem is avoided if the source process completes before the target process begins, but then there is a different lack of transparency, which is that the processes don't run simultaneously. (I think this is the case with the implementation that Heinz showed.) Still, the same sort of pseudo-pipes were in MS-DOS, and they were occasionally useful. Marc On Thu, Dec 5, 2024 at 9:17 AM Heinz Lycklama wrote: > John, thanks for the reminder of the implementation > of pipes on a constrained version of UNIX in the early > days. The exact implementation is described on page 2095 > of the BSTJ July-Aug 1978 for interested parties. > > > > Heinz > > On 12/5/2024 8:00 AM, John R Levine wrote: > > On Thu, 5 Dec 2024, Dan Cross wrote: > > Pipes were invented at least three times I'm aware of, but what made them > work so well in Unix is that they looked to the program the same as a file > so any program could use them for input or output without special > arrangements, > and the shell made it easy to start two programs and pipe them together. > > > Once you have coroutines and queues for passing data between them, a > lot of things start to look like pipes. > > > They also can look a lot like temporary files. Someone, probably Heinz, > did a shell for the tiny Unix that ran on floppies so this > > foo | bar > > actually did this > > foo > tmpfile ; bar < tmpfile; rm tmpfile > > to avoid having to swap programs in and out on floppies. The main > disadvantage was that the tmpfile could overflow the tiny disks of the > time. > > They were invented again at IBM in the 1970s and described in this paper. > I wrote > them a letter, which they published, saying that Unix pipes did the same > thing. > > https://dl.acm.org/doi/10.1147/sj.174.0383 > > > Don't forget CMS pipelines, too! > > Sadly, the Morrison paper cited above is not easily accessible, though > > > If anyone else needs a copy, just ask. > > Regards, > John Levine, johnl@taugh.com, Taughannock Networks, Trumansburg NY > Please consider the environment before reading this e-mail. https://jl.ly > > > -- *My new email address is mrochkind@gmail.com *