For fun this evening, I was reading about how to install a mainframe computer at home. Obviously, not physically: Real mainframes (the ones made by IBM, Hitachi, Siemens/Fujitsu, Amdahl, CDC...) are physically so large and use so much energy, they are impractical for a normal house. I used to do a lot of work on an IBM 3084, and not even the CPU box (without storage, memory, tapes, or networking) would fit into our living room. Matter-of-fact, the water needs of that computer (it was obviously water cooled) would leave us unable to shower or wash our hands, and purchasing one in the early 1980s cost about $10M. Instead, today one can install the Hercules emulator, which runs the IBM mainframe instruction set on any reasonable computer, and is fast enough.
That then leaves the problem of an operating system. Fortunately, IBM has released the most-commonly used operating system MVS into the public domain. That includes important facilities such as
Then one needs a batch job to actually compile, link and run this program (this is the equivalent of the "./a.out" command that one would enter into a Unix system to run the program just entered). Yes, you have to type in everything that's in green below:
And then, finally a few more TSO commands, and one can view the output of the program. And verily, it says "HELLO WORLD!" in all upper case.
About 35 years ago, I thought being able to compile and run a program was a big deal, and very productive. Today, looking at these instructions, and the amount of work required to just print "hello world", I can only laugh. We have come a long way.
That then leaves the problem of an operating system. Fortunately, IBM has released the most-commonly used operating system MVS into the public domain. That includes important facilities such as
- JES2 (which is needed to run any jobs on the OS, and without the ability to run a program a computer is utterly useless),
- TSO (which allows interactive use from a terminal, otherwise the only way to use the computer is to submit (emulated) card decks to start batch jobs), and
- compilers (for things such as Assembly, RPG-II, COBOL, Fortran, Pascal, Snobol, and Spitbol, no I am not kidding).
- Unfortunately, the scripting language REXX does not seem to be available freely, so scripts have to be written in CLIST, which is painful.
Then one needs a batch job to actually compile, link and run this program (this is the equivalent of the "./a.out" command that one would enter into a Unix system to run the program just entered). Yes, you have to type in everything that's in green below:
And then, finally a few more TSO commands, and one can view the output of the program. And verily, it says "HELLO WORLD!" in all upper case.
About 35 years ago, I thought being able to compile and run a program was a big deal, and very productive. Today, looking at these instructions, and the amount of work required to just print "hello world", I can only laugh. We have come a long way.