|
1. |
The UNIX™ programming environment |
|
Software: Practice and Experience,
Volume 9,
Issue 1,
1979,
Page 1-15
Brian W. Kernighan,
John R. Mashey,
Preview
|
PDF (961KB)
|
|
摘要:
AbstractThe UNIXUNIX is a trademark of Bell Laboratories.operating system provides an especially congenial programming environment, in which it is not only possible, but actually natural, to write programs quickly and well.Several characteristics of the UNIX system contribute to this desirable state of affairs. Files have no type or internal structure, so data produced by one program can be used by another without impediment. The basic system interface for input and output provides homogeneous treatment of files, I/O devices and programs, so programs need not care where their data comes from or goes to. The command interpreter makes it convenient to connect programs, by arranging for all data communication.Complex procedures are created not by writing large programs from scratch, but by interconnecting relatively small components. These programs are small and concentrate on single functions, and therefore are easy to build, understand, describe, and maintain. They form a high level toolkit whose existence causes programmers to view their work as the use and creation of tools, a viewpoint that encourages growth in place of reinvention.Tools interact in a limited number of ways, but can be used in many different combinations. Thus, an addition to the toolkit tends to improve the programming power of the user faster than it increases the complexity of interconnection and maintenance. Finally, tools are connected at a very high level by a powerful command language interpreter. The error‐prone and expensive process of program writing can often be avoided in favor of program‐using.In this paper we will present a variety of examples to illustrate this methodology, focusing on those aspects of the system and supporting software which make it possi
ISSN:0038-0644
DOI:10.1002/spe.4380090102
出版商:John Wiley&Sons, Ltd.
年代:1979
数据来源: WILEY
|
2. |
How to design and implement small time‐sharing systems using concurrent pascal |
|
Software: Practice and Experience,
Volume 9,
Issue 1,
1979,
Page 17-24
Norwin Graef,
Horst Kretschmar,
Klaus‐Peter Loehr,
Bernt Morawetz,
Preview
|
PDF (527KB)
|
|
摘要:
AbstractThe programming language Concurrent Pascal can be used for the construction not only of small memory‐resident operating systems but also of moderate size swapping systems. If a few amendments are made to the kernel, it is possible to provide a virtual memory management as a part of the CPASCAL program. This approach was taken in the construction of a small time‐sharing system called MUSIC (Multi‐User System In Concurrent Pascal), the design of which is briefly sketched, along with some considerations about the lan
ISSN:0038-0644
DOI:10.1002/spe.4380090103
出版商:John Wiley&Sons, Ltd.
年代:1979
数据来源: WILEY
|
3. |
CCL—A high‐level command language |
|
Software: Practice and Experience,
Volume 9,
Issue 1,
1979,
Page 25-30
Johannes Madsen,
Preview
|
PDF (403KB)
|
|
摘要:
AbstractThis paper describes how a high‐level, machine‐independent Operating System Command (Job Control) Language, CCL, has been designed and implemented on top of an existing Operating System. An overview of the semantics of the language is given, including some examples giving the flavour of the syntax used. A description of the implementations of CCL under several IBM OS versions, emphasizing division of the implementation into several levels, is also inclu
ISSN:0038-0644
DOI:10.1002/spe.4380090104
出版商:John Wiley&Sons, Ltd.
年代:1979
数据来源: WILEY
|
4. |
A new implementation technique for applicative languages |
|
Software: Practice and Experience,
Volume 9,
Issue 1,
1979,
Page 31-49
D. A. Turner,
Preview
|
PDF (1067KB)
|
|
摘要:
AbstractIt is shown how by using results from combinatory logic an applicative language, such as LISP, can be translated into a form from which all bound variables have been removed. A machine is described which can efficiently execute the resulting code. This implementation is compared with a conventional interpreter and found to have a number of advantages. Of these the most important is that programs which exploit higher order functions to achieve great compactness of expression are executed much more efficiently.
ISSN:0038-0644
DOI:10.1002/spe.4380090105
出版商:John Wiley&Sons, Ltd.
年代:1979
数据来源: WILEY
|
5. |
Debugging techniques |
|
Software: Practice and Experience,
Volume 9,
Issue 1,
1979,
Page 51-63
Søren Lauesen,
Preview
|
PDF (912KB)
|
|
摘要:
AbstractDebugging is efficient if it detects all program errors in a short time. This paper discusses several techniques for improving debugging efficiency. Attention is given both to the initial debugging and to acceptance testing in the maintenance stage. A main decision is whether to use top‐down or bottom‐up debugging, and it is suggested that top‐down debugging is more efficient if combined with some of the other techniques. All the techniques shown are independent of any particular language or debug sof
ISSN:0038-0644
DOI:10.1002/spe.4380090106
出版商:John Wiley&Sons, Ltd.
年代:1979
数据来源: WILEY
|
6. |
The NAG library ‘machine’ |
|
Software: Practice and Experience,
Volume 9,
Issue 1,
1979,
Page 65-72
B. Ford,
J. Bentley,
J. J. du Croz,
S. J. Hague,
Preview
|
PDF (477KB)
|
|
摘要:
AbstractIf a reliable, high quality numerical algorithms library is to be developed then it is essential that we recognize the need for collaboration between different technical communities in the development of the library. This paper suggests an ultimate design for the library and describes the implications of that design for the people involved in the development of the library.
ISSN:0038-0644
DOI:10.1002/spe.4380090107
出版商:John Wiley&Sons, Ltd.
年代:1979
数据来源: WILEY
|
7. |
A support system for interactive languages |
|
Software: Practice and Experience,
Volume 9,
Issue 1,
1979,
Page 73-86
I. T. Parsons,
Preview
|
PDF (829KB)
|
|
摘要:
AbstractThe implementation of a support system for interactive languages is described, which include a controlling routine, a macro processor, lexical and syntactic analysis routines, semantic actions, error handling and analysis, log and code generation routines. There are also utility programs for generating the state tables for the syntax analysis.By using a structured programming approach these routines have been developed very quickly, but can still be developed and enhanced due to a well‐defined working environment, a simple approach to coding and reasonable internal documentatio
ISSN:0038-0644
DOI:10.1002/spe.4380090108
出版商:John Wiley&Sons, Ltd.
年代:1979
数据来源: WILEY
|
8. |
Masthead |
|
Software: Practice and Experience,
Volume 9,
Issue 1,
1979,
Page -
Preview
|
PDF (50KB)
|
|
ISSN:0038-0644
DOI:10.1002/spe.4380090101
出版商:John Wiley&Sons, Ltd.
年代:1979
数据来源: WILEY
|
|