AEPL(ID:2925/aep001)

An Extensible Programming Language 


An Extensible Programming Language


References:
  • Katzenelson, Jacob and Milgrom, Elie "A short presentation of the main features of AEPL - an extensible programming language" view details Abstract: AEPL is a programming system designed as a tool for the implementation of problem-oriented languages. It is based on a small number of simple but powerful concepts described briefly below. The AEPL system is not yet implemented at the present time; it has been used, however, to define - on paper - a language for the manipulation of graphs. The extensibility of the system stems from the ability to create new data types and from the ability to modify some of the language structures dynamically (syntax and associated semantic as well as some control structures).
          in [ACM] SIGPLAN Notices 6(12) December 1971 Proceedings of the international symposium on Extensible languages Grenoble, France 1971 view details
  • Milgrom, Elie "Design of an Extensible Programming Language", doctoral dissertation, Technion - Israel Institute of Technology, July 1971 view details
          in [ACM] SIGPLAN Notices 6(12) December 1971 Proceedings of the international symposium on Extensible languages Grenoble, France 1971 view details
  • Dickman, B. N.: Review of "Symposium on some directions in high-level languages", May 22-23, 1972, New York University view details
          in SIGPLAN Notices 7(05) May 1972 view details
  • Katzenelson, Jacob and Milgrom, Elie "Data structures in the extensible programming language AEPL" pp515-523 view details
          in [AFIPS] Proceedings of the 1972 Fall Joint Computer Conference FJCC 41 view details
  • Milgrom, Elie "The Use of Sets in the Extensible Programming Language AEPL" view details Abstract: AEPL is an extensible programming language where finite and infinite, ordered and unordered sets are used for the construction of complex data structures and for the creation of new data types. This paper describes the various kinds of sets used in AEPL and some of the related features of the language>
          in Courant Symposium on High Level Level Languages, Computer Science Department of the Courant Institute of Mathematical Sciences, May 22, 1972 view details
  • Galler, B. A. review of Katzenelson and Milgrom FJCC 1972 view details Abstract: According to the authors, "the major innovations present in AEPL are the treatment of sets, used to create data structures and to define new data types, and the use of a powerful syntax description mechanism derived from the Markov Algorithm." The Markov Algorithm influence is discussed in another paper, since this one emphasizes the data structures that are used. The data structures are based on a general set-oriented view of objects and their attributes. While the processor which lies beneath all of this may not be too efficient, the point of view is very interesting.
          in ACM Computing Reviews 14(08) August 1973 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 14 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 14(08) August 1973 view details
  • Katzenelson, Jacob and Milgrom, Elie "AEPL: an extensible programming language" International Journal of Computer Mathematics 5(1) 1975 pp3-35 view details Abstract: This paper presents an extensible programming language (AEPL) which has been designed as a tool for the implementation of a large class of languages for specific applications. AEPL includes a powerful data definition facility which enables one to define data structures and new types of data elements as well as new operators to manipulate both new and old data elements. A syntax-driven parsing scheme de rived from the Markov algorithm makes it possible to control the syntax of the language dynamically, thus allowing one to define new language structures such as expressions and statements. As a result of the method used for syntactic definition, languages obtained by extension of AEPL belong to the general class of phrase-structure languages. i.e.. they are not restricted to the class of context-free languages.

    AEPL was extended to produce a language for the manipulation of linear graphs. Our experience indicates that such extensions are fairly simple and. in many cases, straightforward.

          in ACM Computing Reviews 14(08) August 1973 view details