Dan B. Johnston
University of Queensland
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Dan B. Johnston.
Proceedings of a Symposium on Language Design and Programming Methodology | 1979
Dan B. Johnston; Andrew M. Lister
This paper describes an experiment which was undertaken for two purposes: firstly to test the applicability of software science in the realm of student programming, and secondly to obtain quantitative inferences about the programming language PASCAL. The results suggest that software science offers little in the area studied, and possible reasons for this are discussed.
International Journal of Software Engineering and Knowledge Engineering | 1995
Paul A. Bailes; Steven Atkinson; Murray Chapman; Dan B. Johnston; Ian Peake
A generic architecture for the development and application of software conversion tools exposes the requirements set for appropriate enabling technologies. Extrapolation of this set beyond its satisfaction by existing proprietary technology then exposes the opportunity/need for open interfaces between separate components providing orthogonal dimensions of the overall functionality. Some novel aspects of the solutions considered include retrofitting persistence to an open compiler-compiler, and using the Unix file system as a persistent object store, while in the background the advent of standard interfaces to persistence technology suggests that the overall goal is feasible.
Computer Languages | 1993
Paul A. Bailes; Dan B. Johnston; Eric J. Salzman
Abstract The first stage in developing a preprocessor-based Ada extension for functional programming is a facility for demand-driven, “lazy” data streams. One example of the applicability of such structures is in producer-consumer situations. As well as demand-driven data generation, laziness ensures that multiple references to the same element of a stream do not involve re-calculation of its value. A characterization of stream definitions in a genuine functional language is translated into the corresponding Ada forms, and a new syntactic interface to these forms put forward. Complementary operations that manipulate streams are introduced likewise. The robustness of the design and its implementation path are demonstrated by example, but the need and potential for further development are acknowledged.
tri-ada | 1992
Paul A. Bailes; Dan B. Johnston; Eric J. Salzman; Li Wang
Functional-style programming and languages have an important role to play in the software life cycle, but for a variety of technical and organisational reasons are of limited utility until they are integrated with existing languages, notably Ada. A preprocessor implementation provides the full generality of functional programming - programmer-definable function-valued functions - and the usual consequent facility set: lazy evaluation; streams; and data-flow style control constructs. The design and implementation of contemporary functional languages sets quality standards that the Ada9X effort would do well to heed.
conference on software engineering education and training | 2001
David A. Carrington; B. McEniery; Dan B. Johnston
Describes our experience with teaching some elements of the Personal Software Process/sup SM/ as part of a second programming course. A distinctive feature was the class size of more than 360 students. The goals were to help students develop good software development habits early, and to encourage them to see software development as a systematic discipline rather than a trial-and-error activity. The results indicate partial success, with indicators for future improvement. We hope that other people will be able to build on our experience of teaching the concepts of PSP to large groups of students.
asia-pacific software engineering conference | 1994
Paul A. Bailes; Steven Atkinson; Murray Chapman; Dan B. Johnston; Ian Peake
The quality of software reengineering tools depends on that of the generic environments used in their construction. Some existing quality reengineering environments, such as the Software Refinery, go a long way to satisfying their particular design criteria, but fail to meet general open systems criteria. One remedial approach is to recreate some of the functionality of these environments by modifying public domain technology, but which runs the risk of limited interoperability and over-investment in development. Our preferred approach however is to develop interfaces to general persistent object bases, to which bindings from existing languages, tools and proprietary environments can be made.<<ETX>>
Proceedings of ICCI'93: 5th International Conference on Computing and Information | 1993
Paul A. Bailes; Dan B. Johnston; Eric J. Salzman
Realisation of the benefits of declarative programming can be acheived by improving its accessibility from other language cultures. Providing the essence of the functional style-first-class functions-for Ada is the example studied here. Its tasking facility provides a raw basis for first-class procedural abstractions, but without the desired applicative interface. This is achieved by staged development involving: multiple instances of the one function type; data transmission via parameter/result; recursion; and lazy evaluation.<<ETX>>
conference on software engineering education and training | 2001
David A. Carrington; Ben McEniery; Dan B. Johnston
Archive | 1975
Michael J. Mclean; Dan B. Johnston
workshop on program comprehension | 1996
Paul A. Bailes; Paul Burnim; Murray Chapman; Dan B. Johnston