Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.

Jim Welsh

dblp:19/449 · DBLP profile ↗
← Back
15ranked-venue papers
7as first author
0since 2021 · last 2002
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 12 · 6 first-authorHuman-computer interaction and ubiquitous computing · 2 · 1 first-authorTheory of computation · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Software maintenance and evolution · 64% Program analysis · 19% Programming languages and type systems · 16%
Human-computer interaction and pervasive computing
1 paper
User interface design and tools · 100%

Topics — the 1 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Software maintenance and evolution › reverse engineering
design recovery
0.012002
Towards pattern-based design recovery · ICSE 2002

Methods — techniques the papers use, named apart from their topics

reverse engineering · 0.0incremental recognition algorithm · 0.0conceptual analysis · 0.0
YearPublicationVenuePosition
2002 Towards pattern-based design recovery
abstract
A method and a corresponding tool is described which assist design recovery and program understanding by recognising instances of design patterns semi-automatically. The approach taken is specifically designed to overcome the existing scalability problems caused by many design and implementation variants of design pattern instances. Our approach is based on a new recognition algorithm which works incrementally rather than trying to analyse a possibly large software system in one pass without any human intervention. The new algorithm exploits domain and context knowledge given by a reverse engineer and by a special underlying data structure, namely a special form of an annotated abstract syntax graph. A comparative and quantitative evaluation of applying the approach to the Java AWT and JGL libraries is also given.
Jörg Niere, Wilhelm Schäfer, Jörg P. Wadsack, Lothar Wendehals, Jim Welsh
ICSE5
2001 Incremental parsing in language-based editors: user needs and how to meet them
abstract
Abstract Incremental parsing has long been recognized as a technique of great utility in the construction of language‐based editors, and correspondingly, the area currently enjoys a mature theory. Unfortunately, many practical considerations have been largely overlooked in previously published algorithms. Many user requirements for an editing system necessarily impact on the design of its incremental parser, but most approaches focus only on one: response time. This paper details an incremental parser based on LR parsing techniques and designed for use in a modeless syntax recognition editor. The nature of this editor places significant demands on the structure and quality of the document representation it uses, and hence, on the parser. The strategy presented here is novel in that both the parser and the representation it constructs are tolerant of the inevitable and frequent syntax errors that arise during editing. This is achieved by a method that differs from conventional error repair techniques, and that is more appropriate for use in an interactive context. Furthermore, the parser aims to minimize disturbance to this representation, not only to ensure other system components can operate incrementally, but also to avoid unfortunate consequences for certain user‐oriented services. The algorithm is augmented with a limited form of predictive tree‐building, and a technique is presented for the determination of valid symbols for menu‐based insertion. Copyright © 2001 John Wiley & Sons, Ltd.
Phil Cook, Jim Welsh
Softw. Pract. Exp.2
1998 A Program Refinement Tool
abstract
Abstract. The refinement calculus for the development of programs from specifications is well suited to mechanised support. We review the requirements for tool support of refinement as gleaned from our experience with existing refinement tools, and report on the design and implementation of a new tool to support refinement based on these requirements. The main features of the new tool are close integration of refinement and proof in a single tool (the same mechanism is used for both), good management of the refinement context, an extensible theory base that allows the tool to be adapted to new application domains, and a flexible user interface.
David A. Carrington, Ian J. Hayes, Ray Nickson, Geoffrey Watson, Jim Welsh
Formal Aspects Comput.5
1995 Process Support: Inflexible Imposition or Chaotic Composition?
abstract
Current process support systems seek to impose a process structure which controls the work of participants in co-operative work activities. This structure is based on the false premise that the global order emergent from the chaotic dynamics of work processes can be used to prescribe local activity which is in fact situated and unpredictable. A spatial approach to the support of cooperative work processes is proposed. A space of work is defined, incorporating service, information, role and artefact objects, to capture the bounds and characteristics of the global order. The situated reality of work processes is supported by enabling participants to compose objects dynamically to form their own process path through the space.
Geraldine Fitzpatrick, Jim Welsh
Interact. Comput.2
1993 Deriving Modular Designs from Formal Specifications
David A. Carrington, David J. Duke, Ian J. Hayes, Jim Welsh
SIGSOFT FSE4
1992 Conceptual Issues in Language-Based Editor Design
Jim Welsh, Mark A. Toleman
Int. J. Man Mach. Stud.1
1992 Incremental Semantic Evaluation in Language-based Editors
abstract
Abstract We present an incremental semantic analysis strategy for use in language‐based editors. Its advantage is the low storage cost involved in achieving incremental semantic operation with a relatively small loss in response. The scheme, which involves limiting identifier attribute flow, is first described for a simple block‐structured language like Pascal, and then extended to more modern modular languages.
Derek Kiong, Jim Welsh
Softw. Pract. Exp.2
1991 A Design Rationale for a Language-based Editor
abstract
Abstract This paper reviews the design issues that arise in the construction of effective language‐based editors for the preparation of syntactically and static semantically correct language sentences, typically computer programs. The need for such editors to support a pluralistic view of program structure is identified, together with the need to observe the constraints on performance and storage consumption if such editors are to be accepted by professional programmers. From these basic needs, more specific requirements for the display, parsing and semantic checking components of such an editor are derived.
Jim Welsh, Brad Broom, Derek Kiong
Softw. Pract. Exp.1
1981 Formatted Programming Language
abstract
Abstract This paper presents a systematic approach to formatted language design that incorporates formatting within the syntax of programming languages. The approach includes: a metasyntax to ensure that program text is foldable, not only to avoid right margin overflow but also to preclude constructs which are visually confusing or ambiguous; a set of guidelines for language designers to enhance readability within the constraints of the metasyntax; and a folding algorithm which selectively folds a program text. The resulting automatic formatting is consistent with current practice in program and text layout. The effect of this approach is to put program format decisions in the domain of the language's designer, rather than its several implementors or numerous users, which implies uniformly formatted programs of improved readability and therefore usability.
Gordon A. Rose, Jim Welsh
Softw. Pract. Exp.2
1981 A Comparative Study of Task Communication in Ada
abstract
Abstract A previous paper compared the mechanisms for process communication in Hoare's communicating sequential processes and in Brinch Hansen's distributed processes, by both qualitative and quantitative analyses. This paper extends these analyses to the corresponding features for communication between tasks in Ada. The similarity between Ada's features and Hoare's proposals is confirmed, but some limitations on non‐determinism in Ada are noted.
Jim Welsh, Andrew M. Lister
Softw. Pract. Exp.1
1979 A Draft Description of Pascal
abstract
Abstract This paper provides a description of the programming language Pascal. It has been published to enable those without easy access to the official BSI ‘draft for comment’ to comment on the description.
A. M. Addyman, R. Brewer, D. G. Burnett-Hall, R. M. De Morgan, W. Findlay, M. I. Jackson, David A. Joslin, Michael J. Rees, David A. Watt, Jim Welsh, Brian A. Wichmann
Softw. Pract. Exp.10
1979 Pascal-Plus-Another Language for Modular Multiprogramming
abstract
Abstract This paper informally describes the programming language Pascal‐Plus. The language is an extended version of Pascal, incorporating the envelope construct which is an aid to program modularization and data abstraction, the process, monitor and condition constructs which provide a means for representing multiprocessing programs, and a simulation monitor which provides pseudo‐time control facilities for multiprocessing programs.
Jim Welsh, David W. Bustard
Softw. Pract. Exp.1
1978 Economic Range Checks in Pascal
abstract
Abstract A Pascal implementation is described which exploits the information provided by subrange type declarations to minimize the run‐time checking involved in detecting range violations. An evaluation of its performance is given, and some possible modifications are discussed.
Jim Welsh
Softw. Pract. Exp.1
1977 Ambiguities and Insecurities in Pascal
abstract
Abstract Ambiguities and insecurities in the programming language Pascal are discussed.
Jim Welsh, W. J. Sneeringer, Tony Hoare
Softw. Pract. Exp.1
1972 A PASCAL Compiler for ICL 1900 Series Computers
abstract
Abstract The transport of a PASCAL compiler from a CDC 6000 series computer to an ICL 1900 series computer is reported, with some comments on the method used.
Jim Welsh, C. Quinn
Softw. Pract. Exp.1