MARK IV
Informatics' form-driven file management and report generation system for the IBM System/360, announced in 1967 and one of the first big commercial successes of the independent software products industry.
Created by John A. Postley and the Advanced Information Systems (AIS) group of Informatics, Inc.
MARK IV was a file management and report generation system that Informatics, Inc. sold for the IBM System/360 from 1967. A user described their files once in a dictionary, then filled in short structured forms to say which records to select, what to compute and how the report should look. MARK IV turned those forms into a program, ran it, and produced the reports and updated files, often in a single pass over a master file. Today it would be called a report generator or an early fourth-generation language.
Its importance to computing history comes as much from how it was sold as from what it did. MARK IV was one of the first programs sold to many customers at a fixed list price as a supported product, with a perpetual licence, a maintenance fee, optional add-on features and a user group. Historians generally rank it with Applied Data Research’s Autoflow as one of the two most influential early software products. It is often cited as the first software product to pass $10 million, and later $100 million, in cumulative sales.
History and Origins
GIRLS at Douglas Aircraft (1960-1962)
The line that produced MARK IV began with John A. Postley (1924-2004). He had worked at UCLA, Northrop, Hughes Aircraft and the RAND Corporation before joining Advanced Information Systems (AIS), a small firm that started out under the Electrada Corporation. Postley later recalled that at RAND he had noticed how much business programming was the same work done over and over, and he became convinced that common file and reporting jobs should be done “at a far higher level than Cobol did.”
In 1960, Jim Morrison of Douglas Aircraft gave AIS a small consulting contract. Douglas’s engineering department had a large number of tape files in incompatible formats, some of them dating from the IBM 701, and every special report needed its own program. The result, after two years and several contracts, was GIRLS (the Generalized Information Retrieval and Listing System), known inside Douglas as “Program RR10”. GIRLS ran on the IBM 7090. It could read a wide variety of tape formats, select records on complex criteria, and produce several differently formatted reports in one pass over a tape. Users stated what they wanted on a request memo that was punched onto cards and fed in with the data tape and a “descriptive dictionary” of the file layout. Postley and T. Dwight Buettell described the system in Datamation in December 1962.
MARK I, II and III (1961-1965)
Because the 1401 family greatly outnumbered the 7090 in business data processing, Postley next got a contract from the City of Los Angeles to build a similar program for the IBM 1401. This was MARK I. A U.S. Department of Housing and Urban Development contract then paid for test “Urban Management Data Systems” in Denver, Fort Worth, Little Rock, Tulsa and Wichita. All five ran the same refined file management program, MARK II.
MARK III, built for the City of Alexandria, Virginia on an IBM 1410, linked separate municipal master files into one integrated urban information system. It became operational in March 1965. Postley remembered MARK III as having “essentially the same features” as MARK II “but over ten times as fast”; that is his recollection, not a measured benchmark.
In the meantime AIS had changed hands twice. It was sold to Hughes Dynamics, a short-lived Howard Hughes venture. When Hughes decided in 1964 to shut that company down, Postley called Walter Bauer at Informatics, Inc. Informatics took AIS over in spring 1964, and Hughes paid Informatics $38,000 to assume AIS’s unfinished contracts.
Funding a product nobody had sold before (1965-1967)
In December 1965 AIS sold New York State the design of an urban data system for the new IBM System/360. The state never paid for the later build phases, but the specifications became the first complete external specifications for what would be MARK IV. Postley wanted about $500,000 to turn them into a product. Informatics and its parent, Dataproducts, did not want to carry the risk. In January 1966 Bauer suggested a “coalition approach” in which a handful of companies would co-fund the system.
Postley and Herb Jacobsohn found five sponsors:
| Sponsor | Contribution |
|---|---|
| Standard Oil of Indiana (signed 6 November 1966) | $100,000 |
| National Dairy Industries | $90,000 |
| Allen-Bradley | $100,000 |
| Tidewater Oil (a Getty Oil subsidiary) | $110,000 |
| Prudential Insurance | $51,000 plus machine time and a test environment |
The sponsors were consulted on the design, but Informatics kept final say. That arrangement made MARK IV a standard product rather than a custom job. Before it was finished, Eastman Kodak, General Motors, the U.S. Civil Aeronautics Board and others had also ordered it. The specifications were formally accepted on 27 January 1967, and the system was coded during 1967.
Launch (1967-1968)
A brochure dated June 1967 introduced “the MARK IV File Management System” for IBM System/360 under either DOS or OS. It said the system had been “under development since early 1966” and offered it for purchase or lease, with prices starting at $610 a month. The cover letter said initial deliveries were “scheduled for early 1968”, with “over 50 installations presently scheduled”.
According to Informatics’ own 1985 company history, availability was officially announced in November 1967 at a price of $30,000. First deliveries went to the sponsors on 3 January 1968. The first complete installations were accepted at Standard Oil and Prudential on 5 February 1968, and by that date Informatics had booked 117 orders worth about $1.8 million. Twelve months after the announcement, the product had passed $1 million in revenue and was profitable.
Design Philosophy
“It was not a language”
Postley always resisted calling MARK IV a programming language. In a 1986 oral history he said: “I’ve always tried to maintain that it was not a language. Because it wasn’t procedural. It was functional.” The user stated what was wanted (which file, which records, which fields, what totals, what layout) and MARK IV supplied the how.
The June 1967 brochure built its case on three ideas:
- Automatic system functions. Common jobs were pre-coded in the MARK IV library and pulled in when needed. To update a master file, the user named the file and wrote “FM” in the right box on the Run Control Form. MARK IV would then read the master and transactions, match them, apply updates, write audit files of rejected transactions and deleted records, and write the new master.
- The “de facto system”. Any box left blank on a form invoked a standard default. Leaving the selection criteria blank, for example, reported every record in the file.
- Simple structured forms. Different forms served users with different levels of data processing knowledge.
Four levels of user
The design team built four levels of interaction into the system. Clerks used simple forms to submit updates and request standard reports. Managers used optional forms for selective retrieval and one-off reports. Systems analysts used more complex facilities to create and maintain files. Programmers got “exit and entry” points where routines written in other languages could be attached; later material calls this “Own Code”.
A product, not a package
Postley modelled the business on IBM hardware rather than on contract programming. MARK IV had a published price list, IBM-style marketing representatives and systems engineers, and patches called PTFs, as at IBM. Informatics did not ship source code, protected the code as a trade secret, and licensed it per installation rather than per machine. Postley preferred the term “software product” to “package”: in his view a package is handed over and forgotten, while a product is supported, maintained and released again.
How It Worked
A MARK IV run was an ordinary DOS or OS/360 batch job. As the 1967 brochure describes it, MARK IV:
- read the source input (the punched forms),
- edited and verified the entries,
- selected the program modules and subroutines it needed from its library,
- generated a complete program for the requested functions,
- executed that program, and
- produced the results.
Instructions that had to run daily or weekly could be saved in a catalog and called back later, with new requirements added at that point.
The 1971 brochure gives the system’s capacity: in a single run MARK IV “can read 5 input files, generate 13 output files, and produce 255 reports”. It could summarise data to nine levels of totals and subtotals. Files could be on cards, magnetic tape or direct access devices, with fixed or variable-length records, processed sequentially or indexed-sequentially.
The telephone directory example
Both the 1967 and 1971 brochures use the same example. The task was to produce an alphabetical telephone directory from a personnel file, showing name, phone extension, home address and home phone. The solution was a single Basic Request form (renamed the Information Request form by 1971). The user entered:
- a request name and the name of the file,
- the report title, TELEPHONE DIRECTORY,
- the fields to print, in order: NAME, PHONE EXTENSION, HOME ADDRESS, HOME PHONE.
There were no selection criteria, so the default system reported every record. The first lines of the sample output in the 1967 brochure read:
| |
Further down the same sample list are “POSTLEY, J.A.”, “WAGNER, F.V.” and a “MARK, I.V.”, so the brochure’s authors slipped themselves into the data.
Statement codes in the later product
As MARK IV moved from paper forms to card images and then to terminals, each kind of specification line was identified by a short code, and the codes survived into VISION:Builder. The r15 Specifications Guide still lists them in its “Fixed Format Statement Listing”. Examples include:
| Code | Purpose |
|---|---|
FD, D1, D2, Ln | File definition |
LR | Logical relationship definition |
ER, PR | Processing and record selection |
En, Rn, Wn | Output specification |
Tn, Fn, AA | Title, preface and formatted reporting |
Pn | Report preface |
CR, CT | Library maintenance |
Jn, Kn | Graphics |
Later releases also added ASL, a free-form language for procedures with “logical, arithmetic, branching, and text processing statements”. ASL code is placed after an ER statement between ##PROC and ##PEND delimiter lines.
Evolution
Releases, models and special features
Development carried on after launch. MARK IV/I had reached Release 8 by November 1968. Release 6 that year added an indexed-sequential access method, which the company history credits with a 20 percent cut in processing time. The history does not say what workload that figure was measured on. Release 9 was announced in February 1969 and first installed that November, and it effectively became MARK IV/II. The company history says it “executed twice as fast as MARK IV/I”, again without published test conditions.
Informatics counted 1,400 separate product improvements between 1968 and 1973. MARK IV/I release 1 in 1968 had 72 routines and 284 diagnostic messages. MARK IV/II release 4 in 1974 had 360 routines and 730 diagnostic messages.
The product also split into models for different machine sizes. By 1971 there were models 230 and 234 at $20,000 and models 210 and 214 at $10,000 for small System/360 configurations with 32,000 bytes of memory. The full system became the MARK IV/260, and a remote-job-entry version became the MARK IV/267. Informatics also built versions for non-IBM machines. The RCA Spectra 70 version ran under TDOS, according to the 1971 brochure. Univac paid $360,000 for versions for its 9400/9700 and Series 90 machines and for the Siemens 4004. The company history says “very few” of the non-IBM versions sold.
The money was in special features: separately priced add-ons, usually $2,000 to $12,500 each. The first was Table Lookup in December 1968. By 1980 Informatics had released 30 of them, including interfaces to IMS, DL/I and TOTAL databases, Checkpoint Restart, Text Processing, Graphics, Array Processing, and query languages for CICS and Intercomm. A fully loaded MARK IV could cost $150,000. By 1975 special features accounted for almost a quarter of MARK IV’s annual revenue.
The pull toward programming
The non-procedural ideal did not last. Frank Wagner, a SHARE founder and senior Informatics executive, wrote in his 1976 “MARK V Manifesto” that “procedural elements crept in” from programmers on the design team and at customer sites. He added that “by 1970 the programmers’ influence was dominant”, so the language could implement “very sophisticated and very complicated applications—but only by programmers.” The independent IV League user group, mostly programmers, pushed in the same direction. In France, Informatics’ history notes, job ads for programmers listed “MARK IV experience required” as prominently as COBOL.
The IV League
Frank Wagner proposed a user group modelled on SHARE. Postley believed it was the first user group for a software product. Its first informal gathering included a barbecue at Postley’s home in Bel Air. The first large meeting, in New Orleans in February 1969, drew 130 people from 80 companies. Informatics used it to announce new MARK IV models. By 1971 the IV League was meeting twice a year for three days and publishing its proceedings.
Unbundling and IBM’s GIS
IBM’s 1969 decision to price its software separately from its hardware opened the market for independent products. MARK IV’s main direct competitor was IBM’s own Generalized Information System (GIS), which IBM had at first given away. Postley said that at its peak GIS had “about a third the number of installations that we did with Mark IV and theirs was free.”
Online successors
Informatics’ 1969 five-year plan foresaw MARK IV turning into online and even machine-independent versions. A planned COBOL-generating “MARK IV/CT” was dropped in 1969 as not feasible. True online successors came much later. Answer/DB, an end-user query front end that used a MARK IV “engine” in the background, shipped in late 1979. Answer/2, a repackaged small MARK IV for the low end of the batch reporting market, came out in mid-1979. MARK V, designed to be “to the development of on-line programs what MARK IV is to the development of batch programs”, reached the full market in November 1981 for IMS/DC, with a CICS version following.
Sterling Software, Computer Associates and Broadcom
Sterling Software acquired Informatics General in 1985 in what is described as the software industry’s first hostile takeover. Under Sterling, MARK IV was renamed VISION:Builder and Answer/2 became VISION:Two. A secondary source puts the rename around 1994; this page has not confirmed the exact date. Computer Associates bought Sterling Software in 2000, and the product continued as Advantage VISION:Builder. The readme for Advantage VISION:Builder r15 for z/OS is copyrighted 2004 and says the release “was developed and tested on the IBM z/OS 1.4 operating system”.
The original name never quite went away. A Broadcom knowledge-base article on finding VISION:Builder in a mainframe shop says “the module named MARKIV is the definite indicator”. Users tailor the system through a parameter module called M4PARAMS.
Current Relevance
MARK IV is a historical product. It has no open-source implementation, emulator distribution or Docker image, and the original System/360 releases are not publicly available. The VISION:Builder line that descends from it passed to Broadcom when Broadcom acquired CA, and Broadcom’s documentation site files CA VISION:Builder among its legacy bookshelves. Some long-lived z/OS installations may still run jobs built on it. Broadcom’s knowledge-base article is written for customers who “are not sure if the products are still being actively utilized” in their systems.
The best primary sources available today are:
- Informatics’ 1967 and 1971 product brochures, both online (the 1967 brochure is on the Internet Archive),
- John Postley’s 1986 oral history with Luanne Johnson, held by the Computer History Museum,
- Richard L. Forman’s Fulfilling the Computer’s Promise: The History of Informatics 1962-1982 (1985), whose chapter “The Story of MARK IV” is digitised by the Computer History Museum,
- Postley’s memoir “Mark IV: Evolution of the Software Product” and Luanne Johnson’s “A View from the 1960s: How the Software Industry Began”, both in IEEE Annals of the History of Computing, vol. 20, no. 1 (1998).
Why It Matters
MARK IV matters less for any single technical idea, since generalised report generators such as SHARE’s 9PAC came before it, and more for being the product that showed independent software could be a business. Postley’s team worked out, mostly from scratch, how to answer questions the industry later took for granted:
- what software should cost,
- whether to ship source code,
- how to protect a program,
- whether updates should be free,
- how to support customers who were running the same code in different shops.
Their answers were a list price set by the value to the customer, object-code-only perpetual licences, trade-secret protection, annual maintenance fees, separately priced features and an independent user group. All of these became standard practice in the enterprise software business.
The numbers backed the model up. Informatics reported about 700 installations in 37 countries by 1973 and, counting its descendants, more than 1,840 installations in over 40 countries by 1982. The product remained Informatics’ leading profit centre until 1981. As a language, MARK IV showed both the promise and the limits of “programming without programmers”. Non-specialists could produce a report in minutes, but the system kept gaining procedural features until, in Wagner’s words, its most powerful capabilities could be used “only by programmers”. Later fourth-generation languages ran into the same tension.
Timeline
Notable Uses & Legacy
Standard Oil of Indiana and Prudential Insurance
Both were founding sponsors that paid toward development before a line of code existed. Prudential also supplied machine time and a live environment for testing. Their sites accepted the first complete MARK IV installations on 5 February 1968.
Ford Motor Company
In August 1968 Ford gave Informatics a $12,000 contract to train 'a few hundred Ford employees in MARK IV'. Postley later recalled that Ford had 44 computers in one room and paid a single installation price for all of them.
Early international customers
Informatics' company history lists the first European installation at Esso's European headquarters in 1968. It names Ciba-Geigy in Manchester (27 August 1968) as the first truly European customer, followed by BOAC in London and International Computers Ltd. in Manchester. Yamanouchi Pharmaceutical in Japan was its first Asian customer.
National CSS timesharing network
From 1972 or 1973 (Informatics' history gives both years) a remote-access version of MARK IV, the Authorized Remote Service (ARS), was offered nationwide on National CSS. Customers who could not justify their own copy could run MARK IV jobs there, and prospects could try it before buying.
Petroleum and government installations
A 1973 Informatics breakdown of about 700 installations names petroleum (117 domestic sites) and government (70) as its largest US user groups, ahead of the data processing industry, insurance, universities and utilities.