IDS(ID:199/ids001)

Integrated Data Store 


for Integrated Data Store

Extension to first GECOM (1963), then COBOL (1966) involving "chains" (circular lists), for GE computers.
featured (Fry)
-new data manipulation verbs or procedure calls at the high4evel language
interface;
-separate storage and program-level item descriptions;

according to Sibley (1980)
The concept of database procedures [were] available in a slightly limited form in IDS - the Cullinane product



Places
Structures:
Related languages
COBOL => IDS   Extension of
GECOM => IDS   Subsystem of
ISL => IDS   Written in
IDS => CHIC   Based on
IDS => CISS   Based on
IDS => IDMS   Port of
IDS => IDMS   Renaming
IDS => I-D-S/I   Productisation of
IDS => MS   Based on
IDS => RAPID   Based on

References:
  • General Electric Corporation, "GECOM--the general compiler," CP13 144 (IOM-4-61), General Electric Corporation Computer Dept., April 1961 view details Extract: GECOM!!!
    A UNIQUE CONCEPT IN COMPUTER COMMUNICATION
    now available in the GE 225 ... and future General Electric general-purpose computers.

    ? processes COBOL, ALGOL and TABSOL
    ? all problem statements easily read and understood
    ? extended usage... re-programming unnecessary
    ? programs produced faster... more efficiently

    GECOM?the first truly GENERAL COMPILER SYSTEM ?introduces a fresh, versatile approach to computer communication. Developed for the GE 225 computer, the GENERAL COMPILER makes available all of the various proved programming techniques in one consistent, compact package. No longer is it necessary to learn a dozen different programming systems to handle a full range of jobs effectively?each job is approached in exactly the same way, be it formula evaluation, a sort, or even a payroll. The language for describing any run is consistent, operating procedures and programming are standard, and documentation is readable and easily understood.

    THE GENERAL COMPILER PROVIDES:

    A FAMILIAR LANGUAGE STRUCTURE
    Problems need not be stated in machine code. The GENERAL COMPILER processes English language statements (COBOL), Algebraic expressions (ALGOL) , and Structure Tables (TABSOL) . It permits you to use all or any one of the computer languages ... as your needs require. Still, you have available the capability to expand, use other languages and new techniques as your needs change.

    A PROVED, ACCURATE CODER
    Data Description and Problem Logic may be written in one, two, or a combination of the available languages producing a machine program of efficient, effective coding. Since the machine coding is derived directly from the logic of the problem statement, it is only at the logic level that debugging may have to be done.

    A STANDARDIZED, UNDERSTANDABLE DOCUMENTATION
    Because GENERAL COMPILER problems are written in familiar languages, they can be easily read and understood. In addition, problem format provides a high degree of standardization. Programs written for today's machines in GECOM format can be used for future General Electric computers?eliminating the need for re-programming.

    AN EFFICIENT, ECONOMICAL USE OF COMPUTERS
    Personnel training time and expense are sharply reduced .since the novice programmer may use the familiar terminology of his profession. Manual coding is eliminated and debugging cut to a minimum. Thus, a machine program may be produced much faster and more efficiently than by present manual methods.

    THE GENERAL COMPILER is ANOTHER GENERAL ELECTRIC FIRST!

  • Bachman, C.W. and Williams, S.B. "A General Purpose Programming System for Random Access Memories" pp411 -422 view details
          in [AFIPS JCC 26] Proceedings of the 1964 Fall Joint Computer Conference FJCC 1964 view details
  • [GEC] "Integrated Data Store GE-625/635" General Electric Corporation, Manual No. CPB-1093, 1965 view details
          in [AFIPS JCC 26] Proceedings of the 1964 Fall Joint Computer Conference FJCC 1964 view details
  • [GEC] "Introduiction to the Integrated Data Store" GEC Copmuter Department, Phoenix Arizona April 1965 view details
          in [AFIPS JCC 26] Proceedings of the 1964 Fall Joint Computer Conference FJCC 1964 view details
  • Bachman, C.W. "Software for Random Access Processing" April 1965 pp36-41 view details
          in Datamation 11(4) Apr 1965 view details
  • McGee, W. C. review of Bachman 1963 (IDS) view details Abstract: The programming system described in this paper is a technique for organizing, describing and processing data stored in disk files. The system is called Integrated Data Store (IDS) and was developed by General Electric for their GE 215 and 225 computers. IDS will also be available as an extension to the COBOL compiler for the GE 400 and 600 series computers. Advantages cited for the system include reduced programming costs, and more efficient processing, chiefly through the elimination of redundant data.
    IDS provides the job programmer with a set of macro instructions which manipulate records stored on a disk fee. The operations provided are GET (copy a record from the file into core memory); MODIFY (overwrite a record in the file with its correspondent in core); PUT (place a new record in the file); and DELETE (delete a record from the file). In the COBOL version of IDS, these operations will presumably be new verbs, corresponding to the READ and WRITE verbs for sequential-access files.

    The file record which is to participate in an operation may be specified by (1) its address in the file, (2) the data in its "key" fields, or (3) its association with a previously specified record. The latter is made possible through a data organization technique in which each record type t, in the file -- of which there may be any number -- is related to each of the remaining record types t1 in one of three ways: (1) t, is the "master" of t1; (2) t, is the "detail" of tj; (3) t, is neither master nor detail of t1. In the file, records of two types which have a master/detail relationship are associated by means of a "chain" which leads from a record of the master type, through the associated records of the detail type, and finally back to the master. Each record in the chain has a "chaining" field which contains the address of the next record in the chain. Thus, having obtained a particular record in a chain, the next or previous record may be obtained simply by specifying "next" or "prior." A given record may appear in any number of chains.

    The data organization technique of IDS is a generalization of the "tree structure" technique which is now commonly applied to sequential-access files (see for example [ 1 ] ). In the latter type of file, the association of records is necessarily accomplished through the relative position of the records on the file medium; thus, detail records follow their master, etc. Because of this restriction, data structures on a serial- access media resemble trees, in which a given record may have any number of descendants but only a single parent. In random-access files, however, records may be freely associated by means of chaining fields, thus making possible some very complex data structures. In IDS, for example, a given record may not only have multiple details, but also multiple masters. The only restriction seems to be that a given record cannot, either directly or indirectly, stand in a master/detail relationship to itself. (In the paper, a "data structure shorthand" is introduced which is proposed as the basis for the "long sought information algebra. " The notation is in fact nothing more than the directed graph, which has been used extensively to express relationships among elements of a set; see [ 2 ] , for example.)

    The paper concentrates on the data organization aspect of IDS. This is probably the right place to put the emphasis, but at the same time it means that other aspects are not as well covered. For instance, nothing is said about the physical aspect of the system -- equipment requirements, file addressing techniques, etc. Also, the macro commands are not very carefully defined, and their description raises almost as many questions as it answers. These defects will undoubtedly be remedied in subsequent publications on IDS.

          in ACM Computing Reviews 6(03) May-June 1965 view details
  • Bachman, C. W. review of Bobrow and Raphael 1963 view details
          in ACM Computing Reviews 7(03) May-June 1966 view details
  • Bachman, Charles W. "On a generalized language for file organization and manipulation" view details Extract: History
    Historically, the whole area goes back to the General Electric Hanford system of Report and File Maintenance Generators for the IBM 702. This led to the development by SHARE of 9Pac for the IBM 709 and SURGE for the 704. These were nonprocedural languages with implied file maintenance and report generation func- tions. There were neither read nor write commands in these languages; they were completely declarative. The assumption was that if you ran the report generator you would get reports; if you ran the file maintenance generator you expected to maintain the file. The Honeywell FACT compiler successfully extracted many of the file disciplines from SURGE and imbedded them in a procedural language with declarative statements defining record structures.

    These ideas, that were used on a one-dimensional scale (for operating on magnetic tapes) in the 702 Report Generator, SURGE, 9PAc and FACT, were expanded to handle an n-dimensional or graph type structure on a random access device in the GE Integrated Data Store. Today's discussion is concerned with a back-fitting of the Integrated Data Store's concepts of data declarations and record processing commands to serially stored files, to create a unified generalized approach for all classes of data devices.

          in [ACM] CACM 9(03) March 1966 includes proceedings of the ACM Programming Languages and Pragmatics Conference, San Dimas, California, August 1965 view details
  • Canning, R. G. "Data Management: File Organization" in EDP Analyzer 5(12) December 1967 view details Extract: Introduction
    In the past, computerized data files have been designed and programmed largely to meet the record keeping needs of the user. It has usually been painful, to say the least, to change such programs and file structures. Now the field is recognizing that more flexibility is essential. So "Data management" systems are being developed by which data files may be created or restructured much more easily than in the past, and which readily perform common file processing Mctions. Four such systems are analyzed in this paper: GE Integrated Data Store (IDS); Computer Command and Control Multi-List; Auerbach Data Manager-1 (DM-1); NAA-IBM Information Control System (ICS).
          in [ACM] CACM 9(03) March 1966 includes proceedings of the ACM Programming Languages and Pragmatics Conference, San Dimas, California, August 1965 view details
  • Sammet, Jean E. "Computer Languages - Principles and History" Englewood Cliffs, N.J. Prentice-Hall 1969. p.376. view details
          in [ACM] CACM 9(03) March 1966 includes proceedings of the ACM Programming Languages and Pragmatics Conference, San Dimas, California, August 1965 view details
  • Codd, E.F. "A database sublanguage founded on the relational calculus" pp35-68 view details
          in [ACM] Proceedings on the ACM SIGFIDET Workshop on Data Description, Access, and Control, San Diego, California (November 1971) view details
  • Sammet, Jean E. "Roster of Programming Languages for 1973" p147 view details
          in ACM Computing Reviews 15(04) April 1974 view details
  • Stock, Marylene and Stock, Karl F. "Bibliography of Programming Languages: Books, User Manuals and Articles from PLANKALKUL to PL/I" Verlag Dokumentation, Pullach/Munchen 1973 292 view details Abstract: PREFACE  AND  INTRODUCTION
    The exact number of all the programming languages still in use, and those which are no longer used, is unknown. Zemanek calls the abundance of programming languages and their many dialects a "language Babel". When a new programming language is developed, only its name is known at first and it takes a while before publications about it appear. For some languages, the only relevant literature stays inside the individual companies; some are reported on in papers and magazines; and only a few, such as ALGOL, BASIC, COBOL, FORTRAN, and PL/1, become known to a wider public through various text- and handbooks. The situation surrounding the application of these languages in many computer centers is a similar one.

    There are differing opinions on the concept "programming languages". What is called a programming language by some may be termed a program, a processor, or a generator by others. Since there are no sharp borderlines in the field of programming languages, works were considered here which deal with machine languages, assemblers, autocoders, syntax and compilers, processors and generators, as well as with general higher programming languages.

    The bibliography contains some 2,700 titles of books, magazines and essays for around 300 programming languages. However, as shown by the "Overview of Existing Programming Languages", there are more than 300 such languages. The "Overview" lists a total of 676 programming languages, but this is certainly incomplete. One author ' has already announced the "next 700 programming languages"; it is to be hoped the many users may be spared such a great variety for reasons of compatibility. The graphic representations (illustrations 1 & 2) show the development and proportion of the most widely-used programming languages, as measured by the number of publications listed here and by the number of computer manufacturers and software firms who have implemented the language in question. The illustrations show FORTRAN to be in the lead at the present time. PL/1 is advancing rapidly, although PL/1 compilers are not yet seen very often outside of IBM.

    Some experts believe PL/1 will replace even the widely-used languages such as FORTRAN, COBOL, and ALGOL.4) If this does occur, it will surely take some time - as shown by the chronological diagram (illustration 2) .

    It would be desirable from the user's point of view to reduce this language confusion down to the most advantageous languages. Those languages still maintained should incorporate the special facets and advantages of the otherwise superfluous languages. Obviously such demands are not in the interests of computer production firms, especially when one considers that a FORTRAN program can be executed on nearly all third-generation computers.

    The titles in this bibliography are organized alphabetically according to programming language, and within a language chronologically and again alphabetically within a given year. Preceding the first programming language in the alphabet, literature is listed on several languages, as are general papers on programming languages and on the theory of formal languages (AAA).
    As far as possible, the most of titles are based on autopsy. However, the bibliographical description of sone titles will not satisfy bibliography-documentation demands, since they are based on inaccurate information in various sources. Translation titles whose original titles could not be found through bibliographical research were not included. ' In view of the fact that nany libraries do not have the quoted papers, all magazine essays should have been listed with the volume, the year, issue number and the complete number of pages (e.g. pp. 721-783), so that interlibrary loans could take place with fast reader service. Unfortunately, these data were not always found.

    It is hoped that this bibliography will help the electronic data processing expert, and those who wish to select the appropriate programming language from the many available, to find a way through the language Babel.

    We wish to offer special thanks to Mr. Klaus G. Saur and the staff of Verlag Dokumentation for their publishing work.

    Graz / Austria, May, 1973
          in ACM Computing Reviews 15(04) April 1974 view details