If you are lucky then maybe
<infile ./program >outfile
will work. Redirection to give a filedescriptor. Options/arguments???
While we earthlings write something like...
$ <77in cat >77.out
$ cat 77in >77.out
(This copies just 77in to 77.out)
...this Fortran77 program/command wanted it's operands linewise in one input file/stream:
$ <77.io cat
77in
77.out
Now if cat was something else it would parse first line as input file (containing "hello\nworld" eg.) and the second as file to create.
And that is just the newer, easy way it seems...
Instead of a long argument list like cp -a dir1 dir2 dest it is <in_list cpa77.
But then you need an additional file...just like modern cpio does:
<filelist cpio -o >files.cpio. Of course cpio just needs STDIN linewise:
find . | cpio -o >files.cpio
(cpio has this special call syntax because of its functioning, working with many files. It is one command and a half. Same for tar, in a different way)
If anything is typical of unix, then it is this flexibility in feeding control and data to commands in the shell. As I commented: good Q after all! (Thx to accepted answer!)
READ(+,'(A)') INandREAD(+,'(A)') OUT