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.

David Zook

dblp:28/1014 · DBLP profile ↗
← Back
8ranked-venue papers
2as first author
0since 2021 · last 2011
—ORCID · none

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

Software engineering, systems software and programming languages · 7 · 2 first-authorDatabases, data management, data science and information retrieval · 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
Program synthesis and code generation · 67% Programming languages and type systems · 33%

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

TopicWeightPapersLastEvidence papers
Program synthesis and code generation
domain-specific code generation
0.112008
Domain-specific languages and program generation with meta-AspectJ · ACM Trans. Softw. Eng. Methodol. 2008
Programming languages and type systems
metaprogramming
0.112008
Domain-specific languages and program generation with meta-AspectJ · ACM Trans. Softw. Eng. Methodol. 2008
Program synthesis and code generation › generative programming
template-based code generation
0.112008
Domain-specific languages and program generation with meta-AspectJ · ACM Trans. Softw. Eng. Methodol. 2008

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

type inference · 0.1context-sensitive parsing · 0.1
YearPublicationVenuePosition
2011 Statically safe program generation with SafeGen
Shan Shan Huang, David Zook, Yannis Smaragdakis
Sci. Comput. Program.2
2009 Declarative Reconfigurable Trust Management
William R. Marczak, David Zook, Wenchao Zhou, Molham Aref, Boon Thau Loo
CIDR2
2009 Typed Datalog
David Zook, Emir Pasalic, Beata Sarna-Starosta
PADL1
2008 Domain-specific languages and program generation with meta-AspectJ
abstract
Meta-AspectJ (MAJ) is a language for generating AspectJ programs using code templates. MAJ itself is an extension of Java, so users can interleave arbitrary Java code with AspectJ code templates. MAJ is a structured metaprogramming tool: a well-typed generator implies a syntactically correct generated program. MAJ promotes a methodology that combines aspect-oriented and generative programming. A valuable application is in implementing small domain-specific language extensions as generators using unobtrusive annotations for syntax extension and AspectJ as a back-end. The advantages of this approach are twofold. First, the generator integrates into an existing software application much as a regular API or library, instead of as a language extension. Second, a mature language implementation is easy to achieve with little effort since AspectJ takes care of the low-level issues of interfacing with the base Java language. In addition to its practical value, MAJ offers valuable insights to metaprogramming tool designers. It is a mature metaprogramming tool for AspectJ (and, by extension, Java): a lot of emphasis has been placed on context-sensitive parsing and error reporting. As a result, MAJ minimizes the number of metaprogramming (quote/unquote) operators and uses type inference to reduce the need to remember type names for syntactic entities.
Shan Shan Huang, David Zook, Yannis Smaragdakis
ACM Trans. Softw. Eng. Methodol.2
2007 Morphing: Safely Shaping a Class in the Image of Others
Shan Shan Huang, David Zook, Yannis Smaragdakis
ECOOP2
2005 Statically Safe Program Generation with SafeGen
Shan Shan Huang, David Zook, Yannis Smaragdakis
GPCE2
2004 Generating AspectJ Programs with Meta-AspectJ
David Zook, Shan Shan Huang, Yannis Smaragdakis
GPCE1
2004 Program generators and the tools to make them
abstract
Program generation is among the most promising techniques in the effort to increase the automation of programming tasks. In this paper, we discuss the potential impact and research value of program generation, we give examples of our research in the area, and we outline a future work direction that we consider most interesting. Specifically, we first discuss why program generators have significant applied potential. At the same time we argue that, as a research topic, meta-programming tools (i.e., language tools for writing program generators) may be of greater value. We then illustrate our views on generators and meta-programming tools with our latest work on the Meta-AspectJ meta-programming language and the GOTECH generator. Finally, we examine the problem of statically determining the safety of a generator and present its intricacies. We limit our focus to one particular kind of guarantee for generated code---ensuring that the generated program is free of compile-time errors. We believe that this research direction will see significant attention and will make a difference in the mainstream adoption of meta-programming technology.
Yannis Smaragdakis, Shan Shan Huang, David Zook
PEPM3