Malcolm P. Atkinson
University of Glasgow
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Malcolm P. Atkinson.
The Computer Journal | 1983
Malcolm P. Atkinson; Peter J. Bailey; Kenneth Chisholm; W. Paul Cockshott; Ronald Morrison
This paper presents the identification of a new programming language concept and reports our initial investigations of its utility. The concept is to identify persistence as an orthogonal property of data, independent of data type and the way in which data is manipulated. This is expressed by the principle that all data objects, independent of their data type, should have the same rights to persistence or transience. We expect to achieve persistent independent programming, so that the same code is applicable to data of any persistence. We have designed a language PS-algol by using these ideas and constructed a number of implementations. The experience gained is reported here, as a step in the task of achieving languages with proper accommodation for persistent programming.
international conference on management of data | 1996
Malcolm P. Atkinson; Laurent Daynès; Mick J. Jordan; Tony Printezis; Susan Spence
The language Java is enjoying a rapid rise in popularity as an application programming language. For many applications an effective provision of database facilities is required. Here we report on a particular approach to providing such facilities, called “orthogonal persistence”. Persistence allows data to have lifetimes that vary from transient to (the best approximation we can achieve to) indefinite. It is orthogonal persistence if the available lifetimes are the same for all kinds of data. We aim to show that the programmer productivity gains and possible performance gains make orthogonal persistence a valuable augmentation of Java.
very large data bases | 1995
Malcolm P. Atkinson; Ronald Morrison
Persistent Application Systems (PASs) are of increasing social and economic importance. They have the potential to be long-lived, concurrently accessed, and consist of large bodies of data and programs. Typical examples of PASs are CAD/CAM systems, office automation, CASE tools, software engineering environments, and patient-care support systems in hospitals. Orthogonally persistent object systems are intended to provide improved support for the design, construction, maintenance, and operation of PASs. Persistence abstraction allows the creation and manipulation of data in a manner, that is independent of its lifetime, thereby integrating the database view of information with the programming language view. This yields a number of advantages in terms of orthogonal design and programmer productivity which are beneficial for PASs. Design principles have been proposed for persistent systems. By following these principles, languages that provide persistence as a basic abstraction have been developed. In this paper, the motivation for orthogonal persistence is reviewed along with the above mentioned design principles. The concepts for integrating programming languages and databases through the persistence abstraction, and their benefits, are given. The technology to support persistence, the achievements, and future directions of persistence research are then discussed.
Sigplan Notices | 1982
Malcolm P. Atkinson; Kenneth Chisholm; W. Paul Cockshott
PS-algol is a dialect of algol for the programming of problems that would normally require a database management system. It supports a persistent heap, and an associative store; it has embedded within the language features to support tasks normally carried out by filing systems or database management systems.
Software - Practice and Experience | 1983
Malcolm P. Atkinson; Kenneth Chisholm; W. Paul Cockshott; Richard Marshall
PS‐Algol is a dialect of Algol for the programming of problems that would normally require a database management system. It supports a persistent heap, and an associative store; it has embedded within the language features to support tasks normally carried out by filing systems or database management systems.
Data types and persistence | 1988
Malcolm P. Atkinson; Ronald Morrison
Our experience of persistent data in PS-algol [ABCCM83] and surveys we have conducted [AB85] [ABCCM81] have led us to identify various requirements on the stores embodied in the design of a programming language. Axiomatic in our approach to language design are: (i) languages should be strictly typed; (ii) type systems can be discovered that will permit total systems to be built, strictly typed throughout; (iii) languages should eventually provide convenient and consistent notations for all activities inherent in programming.
international workshop on persistent object systems | 1989
Ronald Morrison; Alfred L. Brown; Raymund Carrick; Richard C. H. Connor; Alan Dearle; Malcolm P. Atkinson
Persistent programming is concerned with the construction of large and long lived systems of data. In designing and building persistent object systems, we are attempting to regularise the activities that are performed on data by programming languages, operating systems, database management systems and file systems. We have identified the following areas of research which we are investigating in the context of persistent systems. They are: controlling complexity, protection of data, orthogonal persistence, controlled system evolution and concurrent computation.
british national conference on databases | 2003
Malcolm P. Atkinson
An overview of e-Science and its data requirements exposes a number of challenges and opportunities. The Grid is an attempt to build a virtual abstract operating system, over an arbitrarily large globally distributed collection of heterogeneous resources. The Grid models of authentification, authorisation and accounting, aspire to delivering a single sign-on mechanism for access to this global computer. These models also support dynamic sharing and virtual organisations. The emerging model of composition is based on web services.
Archive | 2000
Malcolm P. Atkinson; Ray Welland
This text provides an introduction to Tycoon l , an open persistent polymorphic programming environment. The Tycoon language TL is based on expressive and orthogonal naming, typing and binding concepts as they are required, for example, in advanced dataintensive applications. The characteristic language mechanisms of TL are first -class functions and modules, parametric and sUbtype polymorphism extended to a fully higher-order type system. Tycoon programs are statically typed but may include explicit dynamic type variables which can be inspected at run-time.
foundations of software technology and theoretical computer science | 1984
Malcolm P. Atkinson; Ronald Morrison
We describe how the provision of a persistent programming environment together with a language that supports first class procedures may be used to provide the semantic features of other object modelling languages. In particular the effects of information hiding, data protection and separate compilation are provided and a comparison of the method with more traditional techniques is examined.