5 citations · 10 across the 6 of their papers we have counts for
7 papers
A Transient Semantics for Typed Racket
Ben Greenman, Lukas Lazarek, Christos Dimoulas +1
Mixed-typed languages enable programmers to link typed and untyped components in various ways. Some offer rich type systems to facilitate the smooth migration of untyped code to th…
Adding Interactive Visual Syntax to Textual Code
Leif Andersen, Michael Ballantyne, Matthias Felleisen
Many programming problems call for turning geometrical thoughts into code: tables, hierarchical structures, nests of objects, trees, forests, graphs, and so on. Linear text does no…
Feature-Specific Profiling
Leif Andersen, Vincent St-Amour, Jan Vitek +1
While high-level languages come with significant readability and maintainability benefits, their performance remains difficult to predict. For example, programmers may unknowingly…
The Call-by-need Lambda Calculus, Revisited
Stephen Chang, Matthias Felleisen
The existing call-by-need lambda calculi describe lazy evaluation via equational logics. A programmer can use these logics to safely ascertain whether one term is behaviorally equi…
Stepping Lazy Programs
Stephen Chang, John Clements, Eli Barzilay +1
Debugging lazy functional programs poses serious challenges. In support of the "stop, examine, and resume" debugging style of imperative languages, some debugging tools abandon laz…
The Design and Implementation of Typed Scheme: From Scripts to Programs
Sam Tobin-Hochstadt, Matthias Felleisen
When scripts in untyped languages grow into large programs, maintaining them becomes difficult. A lack of explicit type annotations in typical scripting languages forces programmer…
Evaluating Call-By-Need on the Control Stack
Stephen Chang, David Van Horn, Matthias Felleisen
Ariola and Felleisen's call-by-need λ-calculus replaces a variable occurrence with its value at the last possible moment. To support this gradual notion of substitution, function a…