|
1. |
Introduction to enhanced C (EC) |
|
Software: Practice and Experience,
Volume 13,
Issue 7,
1983,
Page 551-576
Jacob Katzenelson,
Preview
|
PDF (1441KB)
|
|
摘要:
AbstractThe main goals of EC are to design a set‐oriented, extensible, C‐like language and to build a translator for this language that produces efficient run‐time code.A set‐oriented language supports higher level data aggregates and operations. In EC these are sets, sequences, tuples, oneofs, and the corresponding operations. Extensibility in EC involves the use of data abstractions to define new types. EC's data abstractions, called clusters, are macro‐like devices that perform substitution on the typed syntax tree. They handle names in a way that prevents name conflicts at substitution time. They also have some novel error reporting properties. Run‐time efficient code is understood as code of the quality expected from a programmer using C.This paper describes the EC language and, in particular, the data abstractions. The description is by examples and assumes familiarity with C. Conclusions and the experience gained in applying EC are summarized in the l
ISSN:0038-0644
DOI:10.1002/spe.4380130702
出版商:John Wiley&Sons, Ltd.
年代:1983
数据来源: WILEY
|
2. |
Higher level programming and data abstractions—a case study using enhanced C |
|
Software: Practice and Experience,
Volume 13,
Issue 7,
1983,
Page 577-595
Jacob Katzenelson,
Preview
|
PDF (940KB)
|
|
摘要:
AbstractIn this work the topological sort algorithm is programmed in EC, taking advantage of EC's set‐oriented features and its macro‐like data abstractions. The main issue was whether efficient run‐time code could be achieved while maintaining program structure and readability.The main conclusion is that in this particular example such code was achieved. Program structure and readability were maintained despite changes in both the higher level program and the data abstractions. Other conclusions are the following: (1) The program design process requires dependent data abstractions; (2) it is iterative rather than strictly top down; choosing data abstractions for run‐time efficiency requires insight into the properties of the algorithm. It is believed that global analysis can be used to enhance such
ISSN:0038-0644
DOI:10.1002/spe.4380130703
出版商:John Wiley&Sons, Ltd.
年代:1983
数据来源: WILEY
|
3. |
An implementation of Algol 68 for a small computer |
|
Software: Practice and Experience,
Volume 13,
Issue 7,
1983,
Page 597-660
Jaroslav Nadrchal,
Ivan Sklenář,
Václav Kříž,
Jaroslav Král,
Preview
|
PDF (2889KB)
|
|
摘要:
AbstractA large subset of the language Algol 68 has been implemented on a small computer—the TESLA 200 with a 64 Kbyte store. In this paper, the general structure of the compiler and organization of the program at run‐time are described. Especially, the original methods and devices are mentioned that cause a considerable enhancement of the speed of compilation and program run. These concern the syntax analysis (consistent notation, error recovery), the organization of the resulting program (procedure organization, algorithms of work with multiple values) and the techniques of code generation.We try to show that Algol 68 is a suitable programming language for small as well as large computers and that it can successfully compete with traditional programming langua
ISSN:0038-0644
DOI:10.1002/spe.4380130704
出版商:John Wiley&Sons, Ltd.
年代:1983
数据来源: WILEY
|
4. |
Masthead |
|
Software: Practice and Experience,
Volume 13,
Issue 7,
1983,
Page -
Preview
|
PDF (44KB)
|
|
ISSN:0038-0644
DOI:10.1002/spe.4380130701
出版商:John Wiley&Sons, Ltd.
年代:1983
数据来源: WILEY
|
|