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

Varot Premtoon

dblp:188/9079 · DBLP profile ↗
← Back
3ranked-venue papers
1as first author
0since 2021 · last 2020
—ORCID · none

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

Software engineering, systems software and programming languages · 2 · 1 first-authorArtificial intelligence and machine learning · 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
Software maintenance and evolution · 37% Programming languages and type systems · 37% Compilers and program optimization · 20%
Artificial intelligence
1 paper
Question answering and dialogue systems · 100%

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

TopicWeightPapersLastEvidence papers
Programming languages and type systems
equational reasoning
0.412020
Semantic code search via equational reasoning · PLDI 2020
Software maintenance and evolution › code search
semantic code search
0.412020
Semantic code search via equational reasoning · PLDI 2020
Software maintenance and evolution
refactoring
0.312018
One tool, many languages: language-parametric transformation with incremental parametric syntax · Proc. ACM Program. Lang. 2018
Compilers and program optimization › program transformation
source-to-source transformation
0.312018
One tool, many languages: language-parametric transformation with incremental parametric syntax · Proc. ACM Program. Lang. 2018
Natural language and speech › Question answering and dialogue systems
question answering over structured data
0.212016
Learning to Answer Questions from Wikipedia Infoboxes · EMNLP 2016
Program analysis
data flow analysis
0.112020
Semantic code search via equational reasoning · PLDI 2020
Natural language and speech › Question answering and dialogue systems › community question answering
answer selection
0.112016
Learning to Answer Questions from Wikipedia Infoboxes · EMNLP 2016

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

rewrite rules · 0.4equational reasoning · 0.4incremental parametric syntax · 0.3crowdsourcing · 0.2convolutional neural network · 0.2
YearPublicationVenuePosition
2020 Semantic code search via equational reasoning
abstract
We present a new approach to semantic code search based on equational reasoning, and the Yogo tool implementing this approach. Our approach works by considering not only the dataflow graph of a function, but also the dataflow graphs of all equivalent functions reachable via a set of rewrite rules. In doing so, it can recognize an operation even if it uses alternate APIs, is in a different but mathematically-equivalent form, is split apart with temporary variables, or is interleaved with other code. Furthermore, it can recognize when code is an instance of some higher-level concept such as iterating through a file. Because of this, from a single query, Yogo can find equivalent code in multiple languages. Our evaluation further shows the utility of Yogo beyond code search: encoding a buggy pattern as a Yogo query, we found a bug in Oracle’s Graal compiler which had been missed by a hand-written static analyzer designed for that exact kind of bug. Yogo is built on the Cubix multi-language infrastructure, and currently supports Java and Python.
Varot Premtoon, James Koppel, Armando Solar-Lezama
PLDI1
2018 One tool, many languages: language-parametric transformation with incremental parametric syntax
abstract
We present a new approach for building source-to-source transformations that can run on multiple programming languages, based on a new way of representing programs called incremental parametric syntax. We implement this approach in Haskell in our Cubix system, and construct incremental parametric syntaxes for C, Java, JavaScript, Lua, and Python. We demonstrate a whole-program refactoring tool that runs on all of them, along with three smaller transformations that each run on several. Our evaluation shows that (1) once a transformation is written, little work is required to configure it for a new language (2) transformations built this way output readable code which preserve the structure of the original, according to participants in our human study, and (3) our transformations can still handle language corner-cases, as validated on compiler test suites.
James Koppel, Varot Premtoon, Armando Solar-Lezama
Proc. ACM Program. Lang.2
2016 Learning to Answer Questions from Wikipedia Infoboxes
abstract
A natural language interface to answers on the Web can help us access information more efficiently.We start with an interesting source of information-infoboxes in Wikipedia that summarize factoid knowledge-and develop a comprehensive approach to answering questions with high precision.We first build a system to access data in infoboxes in a structured manner.We use our system to construct a crowdsourced dataset of over 15,000 highquality, diverse questions.With these questions, we train a convolutional neural network model that outperforms models that achieve top results in similar answer selection tasks.
Alvaro Morales, Varot Premtoon, Cordelia Avery, Sue Felshin, Boris Katz
EMNLP2