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.

Jukka Paakki

dblp:p/JPaakki · DBLP profile ↗
← Back
13ranked-venue papers
4as first author
0since 2021 · last 2004
—ORCID · none

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

Software engineering, systems software and programming languages · 9 · 2 first-authorApplied, interdisciplinary, general and emerging computing · 2 · 2 first-authorArtificial intelligence and machine learning · 1Computer networks · 1Theory of computation · 1 · 1 first-author

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
3 papers
Programming languages and type systems · 43% Requirements engineering and software design · 33% Program analysis · 13%

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

TopicWeightPapersLastEvidence papers
Requirements engineering and software design
software architecture
0.012001
Architecture-Oriented Programming Using FRED · ICSE 2001
Programming languages and type systems › grammar formalisms
attribute grammars
0.011994
Multi-Pass Execution of Functional Logic Programs · POPL 1994
Programming languages and type systems › logic programming
functional logic programming
0.011994
Multi-Pass Execution of Functional Logic Programs · POPL 1994
Programming languages and type systems › language semantics › formal semantics
operational semantics
0.011994
Multi-Pass Execution of Functional Logic Programs · POPL 1994
Program analysis
static analysis
0.011994
Multi-Pass Execution of Functional Logic Programs · POPL 1994
Compilers and program optimization
intermediate representation
0.011987
TOOLS: a unifying approach to object-oriented language interpretation · PLDI 1987
Runtime systems and virtual machines › interpreter
interpreter generation
0.011987
TOOLS: a unifying approach to object-oriented language interpretation · PLDI 1987
Programming languages and type systems
language implementation
0.011987
TOOLS: a unifying approach to object-oriented language interpretation · PLDI 1987
Compilers and program optimization › compiler construction
symbol table
0.011987
TOOLS: a unifying approach to object-oriented language interpretation · PLDI 1987

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

proof tree construction · 0.0SLD-resolution · 0.0
YearPublicationVenuePosition
2004 Hypertext support for the information needs of software maintainers
abstract
Abstract Making changes safely to programs requires program comprehension and satisfaction of the information needs of software maintainers. In this paper we provide insights into improving hypertext‐based software maintenance support by analyzing those information needs. There exists a series of four earlier, detailed‐level empirical studies on the information needs of professional C program maintainers. We focus on these studies, synthesize their results and determine sources from which the required information might be attained. An experimental research tool, the HyperSoft system, is used to demonstrate the satisfaction of information needs and the system is analytically evaluated against the needs explored by the empirical studies. HyperSoft is based on our transient hypertext approach for software maintenance support. HyperSoft provides automatically generated hypertextual access structures and software visualizations. The results show that transient hypertext is a well‐suited representational form of the typically required versatile information. The discussion also covers related tools and the main features for providing the information required by maintainers are identified. The results show that the focus areas of these tools vary considerably. Copyright © 2004 John Wiley & Sons, Ltd.
Jussi Koskinen, Airi Salminen, Jukka Paakki
J. Softw. Maintenance Res. Pract.3
2001 Architecture-Oriented Programming Using FRED
Markku Hakala, Juha Hautamäki, Kai Koskimies, Jukka Paakki, Antti Viljamaa, Jukka Viljamaa
ICSE4
2001 Annotating Reusable Software Architectures with Specialization Patterns
abstract
An application framework is a collection of classes implementing the shared architecture of a family of applications. It is shown how the specialization interface ("hot spots") of a framework can be annotated with specialization patterns to provide task-based guidance for the framework specialization process. The specialization patterns define various structural, semantic, and coding constraints over the applications derived from the framework. We also present a tool that supports both the framework development process and the framework specialization process, based on the notion of specialization patterns. We outline the basic concepts of the tool and discuss techniques to identify and specify specialization patterns as required by the tool. These techniques have been applied in realistic case studies for creating programming environments for application frameworks.
Markku Hakala, Juha Hautamäki, Kai Koskimies, Jukka Paakki, Antti Viljamaa, Jukka Viljamaa
WICSA4
1997 From Layer to Layer - Object-Oriented Protocol Refinement in Kannel
Kari Granö, Jukka Paakki
COORDINATION2
1996 Automated Hypertext Support for Software Maintenance
abstract
A model called HyperSoft is presented, which can be used for viewing programs as hypertext. The main goal in developing the model has been to offer a framework for new program browsing tools to support the maintenance of legacy software in particular. The model consists of four layers: source code as such, its syntactic structure, hypertextual access structures based on the source code and its syntax, and the user interface for viewing and manipulating the source code and the access structures. The access structures are based on a general relational model of program dependencies. Both the hypertextual software model and the program dependency model are language independent and provide for a systematic and automated way of representing programs as different kinds of dependency graphs. The models are implemented in a program browsing tool which analyses C programs and automatically generates relevant hypertextual representations for them, according to requests of the maintainer.
Jukka Paakki, Airi Salminen, Jussi Koskinen
Comput. J.1
1996 Experiences with the integration of protocol software tools
Kari Arvonen, Kari Granö, Jarmo Harju, Jukka Paakki
Comput. Commun.4
1994 Multi-Pass Execution of Functional Logic Programs
abstract
An operational semantics for functional logic programs is presented. In such programs functional terms provide for reduction of expressions, provided that they ground. The semantics is based on multi-pass evaluation techniques originally developed for attribute grammars. Program execution is divided into two phases: (1) construction of an incomplete proof tree, and (2) its decoration into a complete proof tree. The construction phase applies a modified SLD-resolution scheme, and the decoration phase a partial (multi-pass) traversal over the tree. The phase partition is generated by static analysis where data dependencies are extracted for the functional elements of the program. The method guarantees that all the functional terms of a program can be evaluated, and no dynamic groundness checks are needed.
Jukka Paakki
POPL1
1994 Program text as hypertext: using program dependences for transient linking
Jussi Koskinen, Jukka Paakki, Airi Salminen
SEKE2
1991 Prolog in Practical Compiler Writing
abstract
We discuss the experiences gained with implementing the programming language Edison in Prolog. The evaluation of Prolog in this application area is based on a comparison with two other Edison compilers, one written in Pascal (procedural approach) and the other generated using the compiler writing systems PGS and GAG (declarative approach). The crucial hindrance to applying Prolog in practical compiler writing was found to be inefficiency of the standard Prologs. Conceptually, however, Prolog was found to be quite attractive and, as a combination of the procedural and declarative approaches, a promising candidate for the basis of a special compiler writing language that is currently under development.
Jukka Paakki
Comput. J.1
1991 High-level tools for language implementation
Kai Koskimies, Jukka Paakki
J. Syst. Softw.2
1990 A Logic-Based Modification of Attribute Grammars for Practical Compiler Writing
Jukka Paakki
ICLP1
1988 The Design of a Language Processor Generator
abstract
Abstract Language processor generators are systems that produce various language processors (including compilers) on the basis of a high‐level specification. The design of language processor generators is discussed on the basis of experiments with a traditional compiler writing system (HLP78) employing pore LALR parsing and general attribute grammars. It is argued that these methods are too primitive from the practical point of view. The design of a new language processor generator, HLP84, is based on this view. This system is an attempt to provide high‐level tools for a restricted class of applications (one‐pass analysis). The syntactic facilities include regular expressions on the right‐hand sides of productions, a disambiguating mechanism that is integrated with regular expressions, and a mechanism for using semantic information to aid parsing. The semantic facilities include automatic support for semantic error handling and for symbol tables. Early experiences with the new system show that in spite of the general overhead caused by the higher automation level, the system allows the generation of reasonably efficient processors.
Kai Koskimies, Otto Nurmi, Jukka Paakki, Seppo Sippu
Softw. Pract. Exp.3
1987 TOOLS: a unifying approach to object-oriented language interpretation
abstract
The object-oriented paradigm is applied to the interpreting of programming languages. An intermediate representation of a program is created as a collection of objects representing various entities in the conceptual world of the source language. These objects cover both the static and the dynamic aspects of a program. As a major advantage of this approach, issues that are traditionally handled by very different techniques (like symbol table management and the generation and execution of intermediate code) can be treated in a unified manner. The specification language of an interpreter generator based on these principles is described.
Kai Koskimies, Jukka Paakki
PLDI2