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

Luna Phipps-Costin

dblp:301/9621 · DBLP profile ↗
← Back
3ranked-venue papers
2as first author
3since 2021 · last 2023
0009-0001-4398-6987ORCID · corroborated

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

Software engineering, systems software and programming languages · 3 · 2 first-author · 3 since 2021

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 · 53% Compilers and program optimization · 10% Program synthesis and code generation · 10%
Theoretical computer science
1 paper
Mathematical optimization · 50% Automated reasoning and model checking · 50%

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

TopicWeightPapersLastEvidence papers
Empirical software engineering
benchmarking
0.712023
MultiPL-E: A Scalable and Polyglot Approach to Benchmarking Neural Code Generation · IEEE Trans. Software Eng. 2023
Program synthesis and code generation
code generation with language models
0.712023
MultiPL-E: A Scalable and Polyglot Approach to Benchmarking Neural Code Generation · IEEE Trans. Software Eng. 2023
Compilers and program optimization
compilation target
0.712023
Continuing WebAssembly with Effect Handlers · Proc. ACM Program. Lang. 2023
Programming languages and type systems › control operators
continuations
0.712023
Continuing WebAssembly with Effect Handlers · Proc. ACM Program. Lang. 2023
Programming languages and type systems › computational effects › algebraic effects
effect handlers
0.712023
Continuing WebAssembly with Effect Handlers · Proc. ACM Program. Lang. 2023
Programming languages and type systems
webassembly
0.712023
Continuing WebAssembly with Effect Handlers · Proc. ACM Program. Lang. 2023
Program analysis
constraint solving
0.512021
Solver-based gradual type migration · Proc. ACM Program. Lang. 2021
Programming languages and type systems › type systems
gradual typing
0.512021
Solver-based gradual type migration · Proc. ACM Program. Lang. 2021
Programming languages and type systems
type inference
0.512021
Solver-based gradual type migration · Proc. ACM Program. Lang. 2021
Software maintenance and evolution › refactoring
type migration
0.512021
Solver-based gradual type migration · Proc. ACM Program. Lang. 2021
Programming languages and type systems › control structures
non-local control flow
0.212023
Continuing WebAssembly with Effect Handlers · Proc. ACM Program. Lang. 2023
Programming languages and type systems
programming paradigms
0.212023
MultiPL-E: A Scalable and Polyglot Approach to Benchmarking Neural Code Generation · IEEE Trans. Software Eng. 2023
Mathematical optimization
discrete optimization
0.112021
Solver-based gradual type migration · Proc. ACM Program. Lang. 2021
Automated reasoning and model checking › satisfiability modulo theories
MaxSMT
0.112021
Solver-based gradual type migration · Proc. ACM Program. Lang. 2021

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

MaxSMT solver · 1.0type safety proof · 0.7large language model evaluation · 0.7formal specification · 0.7benchmark translation · 0.7
YearPublicationVenuePosition
2023 Continuing WebAssembly with Effect Handlers
abstract
WebAssembly (Wasm) is a low-level portable code format offering near native performance. It is intended as a compilation target for a wide variety of source languages. However, Wasm provides no direct support for non-local control flow features such as async/await, generators/iterators, lightweight threads, first-class continuations, etc. This means that compilers for source languages with such features must ceremoniously transform whole source programs in order to target Wasm. We present WasmFX an extension to Wasm which provides a universal target for non-local control features via effect handlers, enabling compilers to translate such features directly into Wasm. Our extension is minimal and only adds three main instructions for creating, suspending, and resuming continuations. Moreover, our primitive instructions are type-safe providing typed continuations which are well-aligned with the design principles of Wasm whose stacks are typed. We present a formal specification of WasmFX and show that the extension is sound. We have implemented WasmFX as an extension to the Wasm reference interpreter and also built a prototype WasmFX extension for Wasmtime, a production-grade Wasm engine, piggybacking on Wasmtime's existing fibers API. The preliminary performance results for our prototype are encouraging, and we outline future plans to realise a native implementation.
Luna Phipps-Costin, Andreas Rossberg, Arjun Guha, Daan Leijen, Daniel Hillerström, K. C. Sivaramakrishnan, Matija Pretnar, Sam Lindley
Proc. ACM Program. Lang.1
2023 MultiPL-E: A Scalable and Polyglot Approach to Benchmarking Neural Code Generation
abstract
Large language models have demonstrated the ability to generate both natural language and programming language text. Although contemporary code generation models are trained on corpora with several programming languages, they are tested using benchmarks that are typically monolingual. The most widely used code generation benchmarks only target Python, so there is little quantitative evidence of how code generation models perform on other programming languages. We propose MultiPL-E, a system for translating unit test-driven code generation benchmarks to new languages. We create the first massively multilingual code generation benchmark by using MultiPL-E to translate two popular Python code generation benchmarks to 18 additional programming languages. We use MultiPL-E to extend the HumanEval benchmark [1] and MBPP benchmark [2] to 18 languages that encompass a range of programming paradigms and popularity. Using these new parallel benchmarks, we evaluate the multi-language performance of three state-of-the-art code generation models: Codex [1], CodeGen [3]and InCoder [4]. We find that Codex matches or even exceeds its performance on Python for several other languages. The range of programming languages represented in MultiPL-E allow us to explore the impact of language frequency and language features on model performance. Finally, the MultiPL-E approach of compiling code generation benchmarks to new programming languages is both scalable and extensible, making it straightforward to evaluate new models, benchmarks, and languages.
Federico Cassano, John Gouwar, Daniel Nguyen, Sydney Nguyen, Luna Phipps-Costin, Donald Pinckney, Ming-Ho Yee, Yangtian Zi, Carolyn Jane Anderson, Molly Q. Feldman, Arjun Guha, Michael Greenberg 0002, Abhinav Jangda
IEEE Trans. Software Eng.5
2021 Solver-based gradual type migration
abstract
Gradually typed languages allow programmers to mix statically and dynamically typed code, enabling them to incrementally reap the benefits of static typing as they add type annotations to their code. However, this type migration process is typically a manual effort with limited tool support. This paper examines the problem of automated type migration: given a dynamic program, infer additional or improved type annotations. Existing type migration algorithms prioritize different goals, such as maximizing type precision, maintaining compatibility with unmigrated code, and preserving the semantics of the original program. We argue that the type migration problem involves fundamental compromises: optimizing for a single goal often comes at the expense of others. Ideally, a type migration tool would flexibly accommodate a range of user priorities. We present TypeWhich, a new approach to automated type migration for the gradually-typed lambda calculus with some extensions. Unlike prior work, which relies on custom solvers, TypeWhich produces constraints for an off-the-shelf MaxSMT solver. This allows us to easily express objectives, such as minimizing the number of necessary syntactic coercions, and constraining the type of the migration to be compatible with unmigrated code. We present the first comprehensive evaluation of GTLC type migration algorithms, and compare TypeWhich to four other tools from the literature. Our evaluation uses prior benchmarks, and a new set of "challenge problems." Moreover, we design a new evaluation methodology that highlights the subtleties of gradual type migration. In addition, we apply TypeWhich to a suite of benchmarks for Grift, a programming language based on the GTLC. TypeWhich is able to reconstruct all human-written annotations on all but one program.
Luna Phipps-Costin, Carolyn Jane Anderson, Michael Greenberg 0002, Arjun Guha
Proc. ACM Program. Lang.1