Results 1 -
5 of
5
Notes on postmodern programming
- Proceedings of the Onward Track at Oopsla 02, the ACM conference on Object-Oriented Programming, Systems, Languages and Applications
, 2002
"... The ultimate goal of all computer science is the program. The performance of programs was once the noblest function of computer science, and computer science was indispensable to great programs. Today, programming and computer science exist in complacent isolation, and can only be rescued by the con ..."
Abstract
-
Cited by 8 (4 self)
- Add to MetaCart
The ultimate goal of all computer science is the program. The performance of programs was once the noblest function of computer science, and computer science was indispensable to great programs. Today, programming and computer science exist in complacent isolation, and can only be rescued by the conscious co-operation and collaboration of all programmers. The universities were unable to produce this unity; and how indeed, should they have done so, since creativity cannot be taught? Designers, programmers and engineers must once again come to know and comprehend the composite character of a program, both as an entity and in terms of its various parts. Then their work will be filled with that true software spirit which, as “theory of computing”, it has lost. Universities must return to programming. The worlds of the formal methods and algorithm analysis, consisting only of logic and mathematics, must become once again a world in which things are built. If the young person who rejoices in creative activity now begins his career as in the older days by learning to program, then the unproductive “scientist ” will no longer be condemned to inadequate science, for their skills will be preserved for the programming in which they can achieve great things. Designers, programmers, engineers, we must all return to programming! There is no essential difference between the computer scientist and the programmer. The computer scientist is an exalted programmer. By the grace of Heaven and in rare moments of inspiration which transcend the will, computer science may unconsciously blossom from the labour of the hand, but a base in programming is essential to every computer scientist. It is there that the original source of creativity lies. Let us therefore create a new guild of programmers without the class-distinctions that raise an arrogant barrier between programmers and computer scientists! Let us desire, conceive, and create the new program of the future together. It will combine design, user-interfaces, and programming in a single form, and will one day rise towards the heavens from the hands of a million workers as the crystalline symbol of a new and coming faith. 1 1
Operation Refinement and Monotonicity in the Schema Calculus
, 2003
"... The schema calculus of Z provides a means for expressing structured, modular specifications. Extending this modularity to program development requires the monotonicity of these operators with respect to refinement. This paper provides a thorough mathematical analysis of monotonicity with respect ..."
Abstract
-
Cited by 6 (4 self)
- Add to MetaCart
The schema calculus of Z provides a means for expressing structured, modular specifications. Extending this modularity to program development requires the monotonicity of these operators with respect to refinement. This paper provides a thorough mathematical analysis of monotonicity with respect to four schema operations for three notions of operation refinement. The mathematical connection between the equational schema logic and monotonicity is discussed and evaluated.
Modular reasoning in Z: scrutinising monotonicity and refinement
, 2004
"... The schema calculus operators of Z provide an excellent means for expressing modular specifications but not for undertaking modular reasoning: it is well-known that these operators have poor monotonicity properties. The paper addresses three topics in this context: first, we provide a thorough mathe ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
The schema calculus operators of Z provide an excellent means for expressing modular specifications but not for undertaking modular reasoning: it is well-known that these operators have poor monotonicity properties. The paper addresses three topics in this context: first, we provide a thorough mathematical analysis of monotonicity with respect to four schema operations and for three notions of operation refinement. Second, we provide a comprehensive analysis of the relational completion operator, known as lifted-totalisation, that underlies the standard notion of refinement in Z. Third, we provide a new semantics which induces a fully monotonic schema calculus.
Modular Refinement in Novel Schema Calculi
- In APSEC 2003
"... Using the language Z for more than specification is hindered by the fact that its algebra of schemas is not monotonic with respect to refinement; so specification is modular, but development is not. In this paper we isolate the reasons why Z suffers from these problems and we describe alternative mo ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Using the language Z for more than specification is hindered by the fact that its algebra of schemas is not monotonic with respect to refinement; so specification is modular, but development is not. In this paper we isolate the reasons why Z suffers from these problems and we describe alternative models for specifications and schema operations which are monotonic. This leads us to explore a number of theoretical and pragmatic questions: the former concern logics for modular refinement; the latter explore the use of novel schema calculi in practice. 1

