[Info-vax] VSI roadmap
Johnny Billquist
bqt at softjar.se
Sun Aug 27 10:38:00 EDT 2023
On 2023-08-26 20:57, terry-... at glaver.org wrote:
> On Friday, August 25, 2023 at 5:47:14 AM UTC-4, Johnny Billquist wrote:
>> On 2023-08-25 06:17, terry-... at glaver.org wrote:
>>> On Wednesday, August 23, 2023 at 10:47:38 AM UTC-4, David Jones wrote:
>>>> To support any number of Unix applications reading of files, the C runtime
>>>> includes fgets() to return what is logically a record. So what?
>>>
>>> That fails woefully even on some text file formats. I probably sound like I'm beating a dead horse, but go look at ckvfio.c for an idea of what is really needed to get text lines out of RMS regardless of the file format. For those who say "RMS contains all of the necessary info", go look at how True BASIC stores the source code for user-written programs (hint: RMS undefined).
>> Well, to be fair - RMS undefined is hardly a "text file format". :-)
>> That's a very weird choice for any program to use for source code.
>
> I take it you've never encountered the religious fervor of latter-day
> Kemeny & Kurtz 8-}
Nope. I have not. Don't even know who they are.
> VMS C-Kermit had to support every possible file format users would
> throw at it (VMS was WAY more common back then) and convert it to
> either canonical ASCII or fixed-block binary. Frank da Cruz and I came
> up with the new "Labeled" file type, which containerized arbitrary data
> (in the VMS case, any and every possible RMS file type) for transport
> with Kermit. The container could go through any system, including
> ones with different character sets, and come out at the far end and be
> reconstituted exactly. As I recall, the test was VAX -> DECsystem-20 ->
> IBM VM/CMS -> MS-DOS -> VAX. There was also a standalone VMS
> utility to reconstitute the file (for example, if it had been FTP'd back
> to the VMS system).
>
> There are all sorts of special cases, like Fortran carriage control, that
> are converted by C-Kermit. My Kermit work was complicated enough
> that it won me a DECUS award or two. 8-)
Oh. I know a bunch about the different formats RMS have. Not that I
played *that* much with it in VMS, but a lot in RSX, where I had my ftp
client and server be able to deal with all of that as well. The problem
is that when travelling over some other systems, it becomes pretty much
impossible to retain a bunch of meta-information unless you store it in
two files, and then recreate the file back on VMS using both of them. Or
else write some encode/decode program that you use on the VMS side which
creates a file that contains all that is needed to restore the file
again, and then you can move that file around as you wish. (Of course,
you could also add the meta-information in the actual file transferred,
but then it looks like some different file on all other systems). Lots
of different choices and compromises, but none is perfect.
Johnny
More information about the Info-vax
mailing list