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.

Susumu Nishimura

dblp:51/6367 · DBLP profile ↗
← Back
15ranked-venue papers
12as first author
0since 2021 · last 2017
0000-0001-7316-0580ORCID · corroborated

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

Software engineering, systems software and programming languages · 11 · 8 first-authorTheory of computation · 4 · 4 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
1 paper
Programming languages and type systems · 100%
Databases, data mining, and information retrieval
1 paper
Data models and query languages · 56% Query processing and optimization · 44%

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

TopicWeightPapersLastEvidence papers
Programming languages and type systems › type systems
polymorphism
0.011998
Static Typing for Dynamic Messages · POPL 1998
Programming languages and type systems › type systems
static typing
0.011998
Static Typing for Dynamic Messages · POPL 1998
Data models and query languages
object-oriented data model
0.011996
An Equational Object-Oriented Data Model and its Data-Parallel Query Language · OOPSLA 1996
Programming languages and type systems › object-oriented programming
object-oriented languages
0.011998
Static Typing for Dynamic Messages · POPL 1998
Programming languages and type systems › type systems
type soundness
0.011998
Static Typing for Dynamic Messages · POPL 1998
Data models and query languages › query language
query language semantics
0.011996
An Equational Object-Oriented Data Model and its Data-Parallel Query Language · OOPSLA 1996

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

second-order polymorphism · 0.0principal type inference · 0.0equational logic · 0.0data parallelism · 0.0
YearPublicationVenuePosition
2017 Schlegel Diagram and Optimizable Immediate Snapshot Protocol
abstract
In the topological study of distributed systems, the immediate snapshot is the fundamental computation block for the topological characterization of wait-free solvable tasks. However, in reality, the immediate snapshot is not available as a native built-in operation on shared memory distributed systems. Borowsky and Gafni have proposed a wait-free multi-round protocol that implements the immediate snapshot using more primitive operations, namely the atomic reads and writes. In this paper, up to an appropriate reformulation on the original protocol by Borowsky and Gafni, we establish a tight link between each round of the protocol and a topological operation of subdivision using Schlegel diagram. Due to the fact shown by Kozlov that the standard chromatic subdivision is obtained by iterated subdivision using Schlegel diagram, the reformulated version is proven to compute the immediate snapshot in a topologically smoother way. We also show that the reformulated protocol is amenable to optimization: Since each round restricts the possible candidates of output to an iteratively smaller region of finer subdivision, each process executing the protocol can decide at an earlier round, beyond which the same final output is reached no matter how the remaining rounds are executed. This reduces the number of read and write operations involved in the overall execution of the protocol, relieving the bottleneck of access to shared memory.
Susumu Nishimura
OPODIS1
2013 A Fully Abstract Game Semantics for Parallelism with Non-Blocking Synchronization on Shared Variables
abstract
We present a fully abstract game semantics for an Algol-like parallel language with non-blocking synchronization primitive. Elaborating on Harmer's game model for nondeterminism, we develop a game framework appropriate for modeling parallelism. The game is a sophistication of the wait-notify game proposed in a previous work, which makes the signals for thread scheduling explicit with a certain set of extra moves. The extra moves induce a Kleisli category of games, on which we develop a game semantics of the Algol-like parallel language and establish the full abstraction result with a significant use of the non-blocking synchronization operation.
Susumu Nishimura
CSL1
2011 Calculating tree navigation with symmetric relational zipper
abstract
Navigating through tree structures is a core operation in tree processing programs. Most notably, XML processing programs intensively use XPath, the path specification language that locates particular nodes in a given document structure.
Yuta Ikeda, Susumu Nishimura
PEPM2
2009 Refining Exceptions in Four-Valued Logic
Susumu Nishimura
LOPSTR1
2008 Safe Modification of Pointer Programs in Refinement Calculus
Susumu Nishimura
MPC1
2008 Algebraic fusion of functions with an accumulating parameter and its improvement
abstract
Abstract This paper develops a new framework for fusion that is designed for eliminating the intermediate data structures involved in the composition of functions that have one accumulating parameter. The new fusion framework comprises two steps: algebraic fusion and its subsequent improvement process. The key idea in our development is to regard functions with an accumulating parameter as functions that operate over the monoid of data context s. Algebraic fusion composes each such function with a monoid homomorphism that is derived from the definition of the consumer function to obtain a higher-order function that computes over the monoid of endofunctions. The transformation result may be further refined by an improvement process, which replaces the operation over the monoid of endofunctions (i.e., function closures) with another monoid operation over a monoid structure other than function closures. Using our framework, one can formulate a particular solution to the fusion problem by devising appropriate monoids and monoid homomorphisms. This provides a unified exposition of a variety of fusion methods that have been developed so far in different formalisms. Furthermore, the cleaner formulation makes it possible to argue about some delicate issues on a firm mathematical basis. We demonstrate that algebraic fusion and improvement in the world of complete pointed partial orders (CPOs) and continuous functions can correctly fuse functions that operate on partial and infinite data structures. We also show that subtle differences in termination behaviours of transformed programmes caused by certain different fusion methods can be cleanly explained by corresponding improvement processes that have different underlying monoid structures.
Shin-ya Katsumata, Susumu Nishimura
J. Funct. Program.2
2006 Algebraic fusion of functions with an accumulating parameter and its improvement
abstract
We present a unifying solution to the problem of fusion of functions, where both the producer function and the consumer function have one accumulating parameter. The key idea in this development is to formulate the producer function as a function which computes over a monoid of data contexts. Upon this formulation, we develop a fusion method called algebraic fusion based on the elementary theory of universal algebra and monoids. The producer function is fused with a monoid homomorphism that is derived from the definition of the consumer function, and is turned into a higher-order function f that computes over the monoid of endofunctions.We then introduce a general concept called improvement, in order to reduce the cost of computing over the monoid of endofunctions (i. e., function closures). An improvement of the function f via a monoid homomorphism h is a function g that satisfies f =h ºg. This provides a principled way of finding a first-order function representing a solution to the fusion problem. It also presents a clean and unifying account for varying fusion methods that have been proposed so far. Furthermore, we show that our method extends to support partial and infinite data structures, by means of an appropriate monoid structure.
Shin-ya Katsumata, Susumu Nishimura
ICFP2
2005 XML stream transformer generation through program composition and dependency analysis
Susumu Nishimura, Keisuke Nakano 0001
Sci. Comput. Program.1
2004 Fusion with stacks and accumulating parameters
abstract
We propose a new algorithm for fusion transformation that allows both stacks and accumulating parameters. The new algorithm can fuse programs that cannot be handled by existing fusion techniques, eg, XML transformations. The algorithm is formulated in a modular, type-directed style where the transformation process is comprised of several transformation steps that change types but preserve the observational behavior of programs. We identify a class of functions to which our new fusion method successfully applies and show that a closure property holds for that class.
Susumu Nishimura
PEPM1
2003 Correctness of a Higher-Order Removal Transformation through a Relational Reasoning
Susumu Nishimura
APLAS1
1999 Parallel Functional Programming on Recursively Defined Data via Data-Parallel Recursion
abstract
This article proposes a new language mechanism for data-parallel processing of dynamically allocated recursively defined data. Different from the conventional array-based data- parallelism, it allows parallel processing of general recursively defined data such as lists or trees in a functional way. This is achieved by representing a recursively defined datum as a system of equations, and defining new language constructs for parallel transformation of a system of equations. By integrating them with a higher-order functional language, we obtain a functional programming language suitable for describing data-parallel algorithms on recursively defined data in a declarative way. The language has an ML style polymorphic type system and a type sound operational semantics that uniformly integrates the parallel evaluation mechanism with the semantics of a typed functional language. We also show the intended parallel execution model behind the formal semantics, assuming an idealized distributed memory multicomputer.
Susumu Nishimura, Atsushi Ohori
J. Funct. Program.1
1998 Static Typing for Dynamic Messages
abstract
Dynamic messages are first-class messages dynamically bound to program variables. By dynamic messages, the methods to be invoked can be varied dynamically at run-time, which provides a powerful abstraction mechanism for object-oriented languages. Dynamic messages are critically needed for some programs, but it seems that there has been no proposal of static type systems for dynamic messages. This paper presents a static typing discipline for dynamic messages and formalizes it into a second order polymorphic type system. The type system satisfies the type soundness property and has a principal type inference algorithm. The type system therefore provides a foundation for a statically typed object-oriented language enriched with polymorphic dynamic messages.
Susumu Nishimura
POPL1
1997 A Strict Functional Language with Cyclic Recursive Data
abstract
Abstract The paper proposes a strict functional language to program with cyclic recursive data structures. In the language, each recursive datum is represented by a system of equations. Cyclic structures are naturally expressed by this representation, and the language provides a general mechanism that transforms several such systems of equations into a single new system of equations. An operational semantics and a polymorphic type system for the language are given, and a type soundness proof is sketched. Finally, it is also shown that the language can be implemented in a data-parallel fashion.
Susumu Nishimura
Formal Aspects Comput.1
1996 An Equational Object-Oriented Data Model and its Data-Parallel Query Language
abstract
This paper presents an equational formulation of an object-oriented data model. In this model, a database is represented as a system of equations over a set of oid's, and a database query is a transformation of a system of equations into another system of equations. During the query processing, our model maintains an equivalence relation over oid's that relates oid's corresponding to the same "real-world entity." By this mechanism, the model achieves a declarative set-based query language and views for objects with identity. Moreover, the query primitives are designed so that queries including object traversal can be evaluated in a data-parallel fashion.
Susumu Nishimura, Atsushi Ohori, Keishi Tajima
OOPSLA1
1996 Integrating Different Versions of Programs with Backward and Forward Slicesa
Susumu Nishimura
Sci. Comput. Program.1