Results 1 -
7 of
7
How the design of JML accommodates both runtime assertion checking and formal verification
- SCIENCE OF COMPUTER PROGRAMMING
, 2003
"... ..."
A Run-time Assertion Checker for Java using JML
, 2000
"... The Java Modeling Language (JML) is a behavioral interface specification language tailored for specifying Java modules. This paper describes a source-to-source translation tool that takes a JML specification and Java source code for a module and produces source code that checks assertions at run-tim ..."
Abstract
-
Cited by 20 (0 self)
- Add to MetaCart
The Java Modeling Language (JML) is a behavioral interface specification language tailored for specifying Java modules. This paper describes a source-to-source translation tool that takes a JML specification and Java source code for a module and produces source code that checks assertions at run-time. It describes issues unique to JML, including specification-only variables, refinement, specification inheritance, and privacy. It also describes the design and implementation of the translation tool.
Exploiting Specifications to Improve Program Performance
, 1994
"... Many approaches to programming emphasize the use of interfaces. The basic idea is to decompose programs into modules and to specify how each module's interface behaves. This makes it easier to reason about programs because one can rely on a module's speci#cation rather than examining its implementat ..."
Abstract
-
Cited by 19 (1 self)
- Add to MetaCart
Many approaches to programming emphasize the use of interfaces. The basic idea is to decompose programs into modules and to specify how each module's interface behaves. This makes it easier to reason about programs because one can rely on a module's speci#cation rather than examining its implementation, which is more complicated.
A Quick Overview of Larch/C++
- JOURNAL OF OBJECT-ORIENTED PROGRAMMING
, 1994
"... This paper gives a quick overview of Larch/C++, an interface specification language for C++. Through examples, we explain declarations, function specifications, class specifications, and template specifications. An extended example is given in the last section. The reader is assumed to have some fam ..."
Abstract
-
Cited by 9 (3 self)
- Add to MetaCart
This paper gives a quick overview of Larch/C++, an interface specification language for C++. Through examples, we explain declarations, function specifications, class specifications, and template specifications. An extended example is given in the last section. The reader is assumed to have some familiarity with C++. The reader should have some familiarity with the idea of formal specification, but is not required to be familiar with the Larch approach to formal specification.
Formal Methods for Extensions to CAS
- In FM'99, Volume II
, 1999
"... We demonstrate the use of formal methods tools to provide a semantics for the type hierarchy of the AXIOM computer algebra system, and a methodology for Aldor program analysis and verification. We give a case study of abstract specifications of AXIOM primitives, and provide an interface between thes ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
We demonstrate the use of formal methods tools to provide a semantics for the type hierarchy of the AXIOM computer algebra system, and a methodology for Aldor program analysis and verification. We give a case study of abstract specifications of AXIOM primitives, and provide an interface between these abstractions and Aldor code.
An Agent-Oriented View of Artificial Intelligence Teaching Using a Modern C++ Programming Methodology
"... . The paper reports experience constructing a C++[4] class library modeling the mathematical structures of order theory. The provision of such a library has two main teaching advantages. Firstly, it allows students in 2nd and 3rd year Computer Science/Engineering to gain exposure and practice in sta ..."
Abstract
- Add to MetaCart
. The paper reports experience constructing a C++[4] class library modeling the mathematical structures of order theory. The provision of such a library has two main teaching advantages. Firstly, it allows students in 2nd and 3rd year Computer Science/Engineering to gain exposure and practice in state-of-the-art software engineering methodology using C++ --- in high demand in both industry and academe. Secondly, it allows the undergraduate artificial intelligence (AI) practical work to be extended to more challenging and realistic exercises in agent-oriented AI [19, 16, 1]. In satisfying these two teaching advantages, this approach marries the formal properties of theoretical AI with modern software engineering practice. To our knowledge, there are no other undergraduate courses in AI in Australia combining AI and C++ programming in this way --- although we would be interested to hear if there were. These ideas are fairly general, and in this sense, destined to appeal to other undergra...
requisito para a aprovação da dissertação de mestrado. ORIENTADORES:
"... Pernambuco. DSC. Engenharia da Computaç~ao, 2008. Inclui bibliografia e ap^endice. 1. Engenharia de software. 2. Linguagens de programaç~ao (Orientada a aspectos)- Aplicaç~ao. 4. Experimentos (Engenharia de software)- Avaliaç~ao. ..."
Abstract
- Add to MetaCart
Pernambuco. DSC. Engenharia da Computaç~ao, 2008. Inclui bibliografia e ap^endice. 1. Engenharia de software. 2. Linguagens de programaç~ao (Orientada a aspectos)- Aplicaç~ao. 4. Experimentos (Engenharia de software)- Avaliaç~ao.

