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

Michael L. Van de Vanter

dblp:02/4674 · DBLP profile ↗
← Back
6ranked-venue papers
2as first author
0since 2021 · last 2017
—ORCID · none

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

Software engineering, systems software and programming languages · 4 · 1 first-authorSystems, architecture and hardware · 1Human-computer interaction and ubiquitous computing · 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 · 84% Program analysis · 12% Software maintenance and evolution · 4%
Human-computer interaction and pervasive computing
1 paper
User interface design and tools · 100%

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

TopicWeightPapersLastEvidence papers
Programming languages and type systems › object-oriented programming
java
0.012013
Maxine: An approachable virtual machine for, and in, java · ACM Trans. Archit. Code Optim. 2013
Programming languages and type systems › programming environment
language-based editing
0.021992
The Pan Language-Based Editing System · ACM Trans. Softw. Eng. Methodol. 1992
Coherent User Interfaces for Language-Based Editing Systems · Int. J. Man Mach. Stud. 1992
User interface design and tools › user interface architecture
user interface management system
0.011992
Coherent User Interfaces for Language-Based Editing Systems · Int. J. Man Mach. Stud. 1992
Program analysis › static analysis
incremental analysis
0.011992
The Pan Language-Based Editing System · ACM Trans. Softw. Eng. Methodol. 1992

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

reflection · 0.2garbage collection · 0.2annotation · 0.2language-based editing · 0.0incremental checking · 0.0
YearPublicationVenuePosition
2017 Language-independent information flow tracking engine for program comprehension tools
abstract
Program comprehension tools are often developed for a specific programming language. Developing such a tool from scratch requires significant effort. In this paper, we report on our experience developing a language-independent framework that enables the creation of program comprehension tools, specifically tools gathering insight from deep dynamic analysis, with little effort. Our framework is language independent, because it is built on top of Truffle, an open-source platform, developed in Oracle Labs, for implementing dynamic languages in the form of AST interpreters. Our framework supports the creation of a diverse variety of program comprehension techniques, such as query, program slicing, and back-in-time debugging, because it is centered around a powerful information-flow tracking engine. Tools developed with our framework get access to the information-flow through a program execution. While it is possible to develop similarly powerful tools without our framework, for example by tracking information-flow through bytecode instrumentation, our approach leads to information that is closer to source code constructs, thus more comprehensible by the user. To demonstrate the effectiveness of our framework, we applied it to two of Truffle-based languages namely Simple Language and TruffleRuby, and we distill our experience into guidelines for developers of other Truffle-based languages who want to develop program comprehension tools for their language.
Mohammad Reza Azadmanesh, Matthias Hauswirth, Michael L. Van de Vanter
ICPC3
2013 Maxine: An approachable virtual machine for, and in, java
abstract
A highly productive platform accelerates the production of research results. The design of a Virtual Machine (VM) written in the Java™ programming language can be simplified through exploitation of interfaces, type and memory safety, automated memory management (garbage collection), exception handling, and reflection. Moreover, modern Java IDEs offer time-saving features such as refactoring, auto-completion, and code navigation. Finally, Java annotations enable compiler extensions for low-level “systems programming” while retaining IDE compatibility. These techniques collectively make complex system software more “approachable” than has been typical in the past. The Maxine VM, a metacircular Java VM implementation, has aggressively used these features since its inception. A co-designed companion tool, the Maxine Inspector, offers integrated debugging and visualization of all aspects of the VM's runtime state. The Inspector's implementation exploits advanced Java language features, embodies intimate knowledge of the VM's design, and even reuses a significant amount of VM code directly. These characteristics make Maxine a highly approachable VM research platform and a productive basis for research and teaching.
Christian Wimmer, Michael Haupt 0003, Michael L. Van de Vanter, Mick J. Jordan, Laurent Daynès, Doug Simon
ACM Trans. Archit. Code Optim.3
2006 Selected papers from the fourth Source Code Analysis and Manipulation (SCAM 2004) Workshop
Tom Dean, Mark Harman, Rainer Koschke, Michael L. Van de Vanter
J. Syst. Softw.4
2002 The documentary structure of source code
Michael L. Van de Vanter
Inf. Softw. Technol.1
1992 Coherent User Interfaces for Language-Based Editing Systems
Michael L. Van de Vanter, Susan L. Graham, Robert A. Ballance
Int. J. Man Mach. Stud.1
1992 The Pan Language-Based Editing System
abstract
Powerful editing systems for developing complex software documents are difficult to engineer. Besides requiring efficient incremental algorithms and complex data structures, such editors must accommodate flexible editing styles, provide a consistent, coherent, and powerful user interface, support individual variations and projectwide configurations, maintain a sharable database of information concerning the documents being edited, and integrate smoothly with the other tools in the environment. Pan is a language-based editing and browsing system that exhibits these characteristics. This paper surveys the design and engineering of Pan , paying particular attention to a number of issues that pervade the system: incremental checking and analysis, information retention in the presence of change, tolerance for errors and anomalies, and extension facilities.
Robert A. Ballance, Susan L. Graham, Michael L. Van de Vanter
ACM Trans. Softw. Eng. Methodol.3