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.

Daniel S. Dantas

dblp:d/DanielSDantas · DBLP profile ↗
← Back
4ranked-venue papers
3as 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 · 4 · 3 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
Programming languages and type systems · 100%
Network and information security
1 paper
Authentication and access control · 50% Systems and software security · 50%

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

TopicWeightPapersLastEvidence papers
Programming languages and type systems
aspect-oriented programming
0.122008
AspectML: A polymorphic aspect-oriented functional programming language · ACM Trans. Program. Lang. Syst. 2008
Harmless advice · POPL 2006
Programming languages and type systems › type inference
hindley-milner type inference
0.112008
AspectML: A polymorphic aspect-oriented functional programming language · ACM Trans. Program. Lang. Syst. 2008
Programming languages and type systems
type inference
0.112008
AspectML: A polymorphic aspect-oriented functional programming language · ACM Trans. Program. Lang. Syst. 2008
Programming languages and type systems
type systems
0.112008
AspectML: A polymorphic aspect-oriented functional programming language · ACM Trans. Program. Lang. Syst. 2008
Systems and software security › information flow control
noninterference
0.112006
Harmless advice · POPL 2006
Authentication and access control
security policy
0.112006
Harmless advice · POPL 2006
Programming languages and type systems › type systems › security type systems
information-flow type systems
0.112006
Harmless advice · POPL 2006
Programming languages and type systems › computational effects
type and effect systems
0.112006
Harmless advice · POPL 2006

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

type and effect system · 0.1non-interference property · 0.1
YearPublicationVenuePosition
2009 Language support for processing distributed ad hoc data
abstract
This paper presents the design, theory and implementation of Gloves, a domain-specific language that allows users to specify the provenance (the derivation history starting from the origins), syntax and semantic properties of collections of distributed data sources. In particular, Gloves specifications indicate where to locate desired data, how to obtain it, when to get it or to give up trying, and what format it will be in on arrival. The Gloves system compiles such specification into a suite of data-processing tools including an archiver, a provenance tracking system, a database loading tool, an alert system, an RSS feed generator and a debugging tool. In addition, the system generates description-specific libraries so that developers can create their own applications. Gloves also provides a generic infrastructure so that advanced users can build new tools applicable to any data source with a Gloves description. We show how Gloves may be used to specify data sources from two domains: CoMon, a monitoring system for PlanetLab's 800+ nodes, and Arrakis, a monitoring system for an AT&T web hosting service. We show experimentally that our system can scale to distributed systems the size of CoMon. Finally, we provide a denotational semantics for Gloves and use this semantics to prove two important theorems. The first shows that our denotational semantics respects the typing rules for the language, while the second demonstrates that our system correctly maintains the provenance.
Kenny Q. Zhu, Daniel S. Dantas, Kathleen Fisher, Limin Jia 0001, Yitzhak Mandelbaum, Vivek S. Pai, David Walker 0001
PPDP2
2008 AspectML: A polymorphic aspect-oriented functional programming language
abstract
This article defines AspectML, a typed functional, aspect-oriented programming language. The main contribution of AspectML is the seamless integration of polymorphism, run-time type analysis and aspect-oriented programming language features. In particular, AspectML allows programmers to define type-safe polymorphic advice using pointcuts constructed from a collection of polymorphic join points. AspectML also comes equipped with a type inference algorithm that conservatively extends Hindley--Milner type inference. To support first-class polymorphic point-cut designators, a crucial feature for developing aspect-oriented profiling or logging libraries, the algorithm blends the conventional Hindley--Milner type inference algorithm with a simple form of local type inference. We give our language operational meaning via a type-directed translation into an expressive type-safe intermediate language. Many complexities of the source language are eliminated in this translation, leading to a modular specification of its semantics. One of the novelties of the intermediate language is the definition of polymorphic labels for marking control-flow points. When a set of labels is assembled as a pointcut, the type of each label is an instance of the type of the pointcut.
Daniel S. Dantas, David Walker 0001, Geoffrey Washburn, Stephanie Weirich
ACM Trans. Program. Lang. Syst.1
2006 Harmless advice
abstract
This paper defines an object-oriented language with harmless aspect-oriented advice. A piece of harmless advice is a computation that, like ordinary aspect-oriented advice, executes when control reaches a designated control-flow point. However, unlike ordinary advice, harmless advice is designed to obey a weak non-interference property. Harmless advice may change the termination behavior of computations and use I/O, but it does not otherwise influence the final result of the mainline code. The benefit of harmless advice is that it facilitates local reasoning about program behavior. More specifically, programmers may ignore harmless advice when reasoning about the partial correctness properties of their programs. In addition, programmers may add new pieces of harmless advice to pre-existing programs in typical "after-the-fact" aspect-oriented style without fear they will break important data invariants used by the mainline code.In order to detect and enforce harmlessness, the paper defines a novel type and effect system related to information-flow type systems. The central technical result is that well-typed harmless advice does not interfere with the mainline computation. The paper also presents an implementation of the language and a case study using harmless advice to implement security policies.
Daniel S. Dantas, David Walker 0001
POPL1
2005 PolyAML: a polymorphic aspect-oriented functional programming language
abstract
This paper defines PolyAML, a typed functional, aspect-oriented programming language. The main contribution of PolyAML is the seamless integration of polymorphism, run-time type analysis and aspect-oriented programming language features. In particular, PolyAML allows programmers to define type-safe polymorphic advice using pointcuts constructed from a collection of polymorphic join points. PolyAML also comes equipped with a type inference algorithm that conservatively extends Hindley-Milner type inference. To support first-class polymorphic point-cut designators, a crucial feature for developing aspect-oriented profiling or logging libraries, the algorithm blends the conventional Hindley-Milner type inference algorithm with a simple form of local type inference.We give our language operational meaning via a type-directed translation into an expressive type-safe intermediate language. Many complexities of the source language are eliminated in this translation, leading to a modular specification of its semantics. One of the novelties of the intermediate language is the definition of polymorphic labels for marking control-flow points. These labels are organized in a tree structure such that a parent in the tree serves as a representative for all of its children. Type safety requires that the type of each child is less polymorphic than its parent type. Similarly, when a set of labels is assembled as a pointcut, the type of each label is an instance of the type of the pointcut.
Daniel S. Dantas, David Walker 0001, Geoffrey Washburn, Stephanie Weirich
ICFP1