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.
? Tutorial for this page

Jason Ryder

dblp:55/4437 · DBLP profile ↗
← Back
1ranked-venue papers
0as first author
0since 2021 · last 2009
—ORCID · none

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

Software engineering, systems software and programming languages · 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
1 paper
Programming languages and type systems · 100%

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

TopicWeightPapersLastEvidence papers
Programming languages and type systems › method dispatch
dynamic dispatch
0.112009
Expressive and modular predicate dispatch for Java · ACM Trans. Program. Lang. Syst. 2009
Programming languages and type systems › type checking
modular typechecking
0.112009
Expressive and modular predicate dispatch for Java · ACM Trans. Program. Lang. Syst. 2009
Programming languages and type systems › method dispatch
predicate dispatch
0.112009
Expressive and modular predicate dispatch for Java · ACM Trans. Program. Lang. Syst. 2009
Programming languages and type systems
type systems
0.112009
Expressive and modular predicate dispatch for Java · ACM Trans. Program. Lang. Syst. 2009
Programming languages and type systems › object-oriented programming
java
0.012009
Expressive and modular predicate dispatch for Java · ACM Trans. Program. Lang. Syst. 2009
Programming languages and type systems
object-oriented programming
0.012009
Expressive and modular predicate dispatch for Java · ACM Trans. Program. Lang. Syst. 2009

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

featherweight java · 0.1decision procedures · 0.1
YearPublicationVenuePosition
2009 Expressive and modular predicate dispatch for Java
abstract
Predicate dispatch is an object-oriented (OO) language mechanism for determining the method implementation to be invoked upon a message send. With predicate dispatch, each method implementation includes a predicate guard specifying the conditions under which the method should be invoked, and logical implication of predicates determines the method overriding relation. Predicate dispatch naturally unifies and generalizes several common forms of dynamic dispatch, including traditional OO dispatch, multimethod dispatch, and functional-style pattern matching. Unfortunately, prior languages supporting predicate dispatch have had several deficiencies that limit the practical utility of this language feature. We describe JPred, a backward-compatible extension to Java supporting predicate dispatch. While prior languages with predicate dispatch have been extensions to toy or nonmainstream languages, we show how predicate dispatch can be naturally added to a traditional OO language. While prior languages with predicate dispatch have required the whole program to be available for typechecking and compilation, JPred retains Java's modular typechecking and compilation strategies. While prior languages with predicate dispatch have included special-purpose algorithms for reasoning about predicates, JPred employs general-purpose, off-the-shelf decision procedures. As a result, JPred's type system is more flexible, allowing several useful programming idioms that are spuriously rejected by those other languages. After describing the JPred language informally, we present an extension to Featherweight Java that formalizes the language and its modular type system, which we have proven sound. Finally, we discuss two case studies that illustrate the practical utility of JPred, including its use in the detection of several errors.
Todd D. Millstein, Christopher Frost 0001, Jason Ryder, Alessandro Warth
ACM Trans. Program. Lang. Syst.3