SIGMA(ID:4093/sig004)Interactive maths system based on CFSSystem for INteractive Graphical Mathematical Applications Language for Interactive Array-Oriented Computing Language for matrices and generation of mathematical programming reports. Carlo Vandoni et al, CERN 1972 Places Structures: Related languages
References: The SIGMA Language definition has been completed and the first stage of an implementation on the CDC-6000 series computers is presently operational. […] APL redefines mathematical notation and BASIC simplifies FORTRAN. Our approach is to minimize the number of concepts which are new to a non-computer-specialist, scientist-user by (i) retaining conventional mathematical notation so that the concept of expression is immediately familiar. (ii) providing a single, automatically managed data structure: the n-dimensional rectangular array. (iii) providing a single data type: number, which contains integers, Boolean variables and string characters. (iv) providing a strong, direct and flexible graphical output capability through a single operator DISPLAY and coherent semantics in its operand list. Another way to state our approach is to observe that whatever appears as a logical whole to the user'should be handled as a logical whole by the problem solving language. Therefore the data structure and operators are defined to spare the user the writing of repetitive programming structures without impairing the flexibility of the language. The AMTRAN language was inspired by the Culler-Fried system [I]. The first AMTRAN system for the IBM 1620 computer was developed I n 1965 by Dr. R N. Seitz [2]. Of NASA, Marshall Space Flight Center, Huntsville, Alabama. The Huntsville AMRAN group has recently completed an AMTRAN implementation for the Datacraft DC-6024 computer. The SIGMA language and implementation for the CDC 6000 series computers is a joint research project between CERN, Geneva, Switzerland and the Computer Center, University of Georgia. SIGMA was defined in the summer of 1971 as a considerably extended combination of GAMMA and AMTRAN. in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details After introducing the basic concepts and features of the language, the report describes in some detail the methods and operators for the automatic handling of arrays and for their graphical display, the procedures for construction of programs by users, and other facilities of the system. The report is a new version of CERN 73-5. pdf Extract: Introduction Introduction SIGMA (System for Interactive Graphical Mathematical Applications) is a programming language for scientific computing whose major characteristics are the following: i) The basic data units are scalars, one-dimensional arrays, and multidimensional rectangular arrays; SIGMA provides automatic handling of these arrays. ii) The calculational operators of SIGMA closely resemble the operations of numerical mathematics; procedural operators are often analogous to those of FORTRAN. iii) The system is designed to be used in interactive mode on terminals connected to a central computer; it provides convenient facilities for graphical display of arrays in the form of (sets of) curves. iv) The user can construct his own programs within the system and has also access to a program library; he can store and retrieve his data and programs; he obtains on request a hard copy of alphanumeric and graphical type. v) The SIGMA implementation is laid out as a multi-access time-sharing system using the central processor only for actual computation; the implementation also provides for batch-processing use of SIGMA, the user-written code being the same for both interactive and batch modes. The conceptual development of the SIGMA language resulted from several years of practical work in the field of interactive, array-oriented computing with graphical displays. The early part of this work used GAMMA [1], an interactive system for one-dimensional array computation implemented and operated at CERN on computers of the CDC 3000 series. GAMMA was based on the Culler-Fried system [2] as far as structure and language were concerned; to develop its graphical facilities one relied extensively on user experience. The array-handling methods of SIGMA were taken over from the AMTRAN language [3] and were developed further for multi-dimensional arrays. The SIGMA syntax is similar to FORTRAN (avoiding, however, several of its inconveniences) but contains also elements of other programming languages. SIGMA was first implemented on CDC 6000 series computers at CERN, practical experience was gained, and the graphical facilities were developed by extending GAMMA graphics to multi-dimensional arrays. Extract: Contents of this report Contents of this report The present report describes the principles and main facilities of the SIGMA system as, at present, in use at CERN [4]. For a more detailed description of the use of the SIGMA language we refer the reader to the CERN SIGMA Users' Manual [51. A. tutorial, SIGMA without effort [6], is also available at CERN. This report concentrates on the main features of the system rather than on details of operation and implementation; the latter will necessarily be different from one computer centre to the other, and will depend not only on hardware or software considerations but also on the specialization and wishes of the users. In fact, for various features of the system which are described in a specific way in this report, this is done only for purposes of clarity and brevity; other specifications are possible and may even turn out to be preferable depending on the main usage of the system. Sections 1 to 5 introduce the general concepts and characteristics of the system. Sections 6 to 8 are devoted to the automatic handling of arrays. Section 9 deals with the management of names and data, Section 10 with user-constructed programs, Section 11 with input-output, and Section 12 with the graphical display of arrays. Some examples are given in Section 13. Extract: Acknowledgements Acknowledgements The authors of this report are indebted to many people who contributed in various ways to the development of the GAMMA and SIGMA projects. C. Vandoni, as chief implementor of both systems, acknowledges, in particular, the important contributions made by F. Wittmann and J. Moszczynski. His and J. Reinfeld's thanks are also due to H. Jedlicka for contributing to the implementation work at the University of Georgia. R. Hagedorn and L. Van Hove, theoretical physicists and proponents of the two projects, wish to express their gratitude to M.G.N. Hine and G.R. Macleod for giving the necessary support at CERN, as well as to G.J. Culler and B.D. Fried for introducing them to the principles and applications of the Culler-Fried system for on-line scientific computing at the University of California. In the conceptual development of the systems, and especially in the definition of aims, data structures, and language of SIGMA, the authors profited greatly from suggestions and remarks contributed by many users and based on their experience with concrete scientific applications. The present report is a revised version of the CERN report 73-5, which described SIGMA before its complete implementation was achieved. The present SIGMA is in various respects better than and in no respect inferior to what had been envisaged in the previous report. Many of the improvements were due to the work of G. Barta and again to many users. The authors wish to thank all these people. in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details Resources
|