Rastislav Bodík

Orcid: 0000-0001-6639-1647

Affiliations:
  • University of Washington, Seattle, USA


According to our database1, Rastislav Bodík authored at least 104 papers between 1995 and 2023.

Collaborative distances:

Awards

ACM Fellow

ACM Fellow 2018, "For contributions to program synthesis".

Timeline

Legend:

Book 
In proceedings 
Article 
PhD thesis 
Dataset
Other 

Links

Online presence:

On csauthors.net:

Bibliography

2023
Grisette: Symbolic Compilation as a Functional Programming Library.
Proc. ACM Program. Lang., January, 2023

Conflict-Driven Synthesis for Layout Engines.
Proc. ACM Program. Lang., 2023

A Lineage-Based Referencing DSL for Computer-Aided Design.
Proc. ACM Program. Lang., 2023

2022
Differentiable 3D CAD Programs for Bidirectional Editing.
Comput. Graph. Forum, 2022

Synthesizing analytical SQL queries from computation demonstration.
Proceedings of the PLDI '22: 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation, San Diego, CA, USA, June 13, 2022

Tree traversal synthesis using domain-specific symbolic compilation.
Proceedings of the ASPLOS '22: 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Lausanne, Switzerland, 28 February 2022, 2022

2021
Falx: Synthesis-Powered Visualization Authoring.
Proceedings of the CHI '21: CHI Conference on Human Factors in Computing Systems, 2021

2020
Visualization by example.
Proc. ACM Program. Lang., 2020

Verifying and improving Halide's term rewriting system with program synthesis.
Proc. ACM Program. Lang., 2020

Learning inductive invariants by sampling from frequency distributions.
Formal Methods Syst. Des., 2020

Computer-Aided Personalized Education.
CoRR, 2020

Fireiron: A Scheduling Language for High-Performance Linear Algebra on GPUs.
CoRR, 2020

Summary-Based Symbolic Evaluation for Smart Contracts.
Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering, 2020

Fireiron: A Data-Movement-Aware Scheduling Language for GPUs.
Proceedings of the PACT '20: International Conference on Parallel Architectures and Compilation Techniques, 2020

2019
Iterative Search for Reconfigurable Accelerator Blocks With a Compiler in the Loop.
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst., 2019

Using human-in-the-loop synthesis to author functional reactive programs.
CoRR, 2019

Precise Attack Synthesis for Smart Contracts.
CoRR, 2019

Swizzle Inventor: Data Movement Synthesis for GPU Kernels.
Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems, 2019

2018
Speeding up symbolic reasoning for relational queries.
Proc. ACM Program. Lang., 2018

Bonsai: synthesis-based reasoning for type systems.
Proc. ACM Program. Lang., 2018

Rousillon: Scraping Distributed Hierarchical Web Data.
Proceedings of the 31st Annual ACM Symposium on User Interface Software and Technology, 2018

Accelerating Syntax-Guided Invariant Synthesis.
Proceedings of the Tools and Algorithms for the Construction and Analysis of Systems, 2018

Floem: A Programming System for NIC-Accelerated Network Applications.
Proceedings of the 13th USENIX Symposium on Operating Systems Design and Implementation, 2018

2017
Skip blocks: reusing execution history to accelerate web scripts.
Proc. ACM Program. Lang., 2017

Domain-Specific Symbolic Compilation.
Proceedings of the 2nd Summit on Advances in Programming Languages, 2017

Interactive Query Synthesis from Input-Output Examples.
Proceedings of the 2017 ACM International Conference on Management of Data, 2017

Synthesizing highly expressive SQL queries from input-output examples.
Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, 2017

Gradual synthesis for static parallelization of single-pass array-processing programs.
Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, 2017

Sampling invariants from frequency distributions.
Proceedings of the 2017 Formal Methods in Computer Aided Design, 2017

2016
SIMPL: A DSL for Automatic Specialization of Inference Algorithms.
CoRR, 2016

Approaching Symbolic Parallelization by Synthesis of Recurrence Decompositions.
Proceedings of the Proceedings Fifth Workshop on Synthesis, 2016

Ringer: web automation by demonstration.
Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, 2016

Compiling a gesture recognition application for a low-power spatial architecture.
Proceedings of the 17th ACM SIGPLAN/SIGBED Conference on Languages, 2016

Swift: Compiled Inference for Probabilistic Programming Languages.
Proceedings of the Twenty-Fifth International Joint Conference on Artificial Intelligence, 2016

GreenThumb: superoptimizer construction framework.
Proceedings of the 25th International Conference on Compiler Construction, 2016

Scaling up Superoptimization.
Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems, 2016

2015

Browser Record and Replay as a Building Block for End-User Web Automation Tools.
Proceedings of the 24th International Conference on World Wide Web Companion, 2015

Synthesis of layout engines from relational constraints.
Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, 2015

Toward tool support for interactive synthesis.
Proceedings of the 2015 ACM International Symposium on New Ideas, 2015

Program synthesis: opportunities for the next decade.
Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming, 2015

2014
Programming by manipulation for layout.
Proceedings of the 27th Annual ACM Symposium on User Interface Software and Technology, 2014

A lightweight symbolic virtual machine for solver-aided host languages.
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2014

Chlorophyll: synthesis-aided compiler for low-power spatial architectures.
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2014

CodeHint: dynamic and interactive synthesis of code snippets.
Proceedings of the 36th International Conference on Software Engineering, 2014

2013
Algorithmic program synthesis: introduction.
Int. J. Softw. Tools Technol. Transf., 2013

Parallel schedule synthesis for attribute grammars.
Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, 2013

Synthesis of biological models from mutation experiments.
Proceedings of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2013

Growing solver-aided languages with rosette.
Proceedings of the ACM Symposium on New Ideas in Programming and Reflections on Software, 2013

Modeling biology with solver-aided programming languages.
Proceedings of the Generative Programming: Concepts and Experiences, 2013

Syntax-guided synthesis.
Proceedings of the Formal Methods in Computer-Aided Design, 2013

2012
Software Synthesis (Dagstuhl Seminar 12152).
Dagstuhl Reports, 2012

Compiling what to how: technical perspective.
Commun. ACM, 2012

Synthesizing Programs with Constraint Solvers.
Proceedings of the Computer Aided Verification - 24th International Conference, 2012

2011
Synthesis of first-order dynamic programming algorithms.
Proceedings of the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2011

Angelic debugging.
Proceedings of the 33rd International Conference on Software Engineering, 2011

2010
Fast and parallel webpage layout.
Proceedings of the 19th International Conference on World Wide Web, 2010

Field-sensitive program dependence analysis.
Proceedings of the 18th ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2010

Programming with angelic nondeterminism.
Proceedings of the 37th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2010

Specifying and verifying sparse matrix codes.
Proceedings of the Proceeding of the 15th ACM SIGPLAN international conference on Functional programming, 2010

2009
A view of the parallel computing landscape.
Commun. ACM, 2009

Algorithmic Program Synthesis with Partial Programs and Decision Procedures.
Proceedings of the Static Analysis, 16th International Symposium, 2009

09501 Abstracts Collection - Software Synthesis.
Proceedings of the Software Synthesis, 06.12. - 11.12.2009, 2009

Synthesizing hardware from sketches.
Proceedings of the 46th Design Automation Conference, 2009

2008
Small languages in an undergraduate PL/Compiler course.
ACM SIGPLAN Notices, 2008

SIGPLAN programming language curriculum workshop: Discussion Summaries and recommendations.
ACM SIGPLAN Notices, 2008

Type inference for locality analysis of distributed data structures.
Proceedings of the 13th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, 2008

Sketching concurrent data structures.
Proceedings of the ACM SIGPLAN 2008 Conference on Programming Language Design and Implementation, 2008

Software synthesis with sketching.
Proceedings of the 2008 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-based Program Manipulation, 2008

Jolt: lightweight dynamic analysis and removal of object churn.
Proceedings of the 23rd Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2008

2007
A Hardware Memory Race Recorder for Deterministic Replay.
IEEE Micro, 2007

Thin slicing.
Proceedings of the ACM SIGPLAN 2007 Conference on Programming Language Design and Implementation, 2007

Sketching stencils.
Proceedings of the ACM SIGPLAN 2007 Conference on Programming Language Design and Implementation, 2007

DITTO: automatic incrementalization of data structure invariant checks (in Java).
Proceedings of the ACM SIGPLAN 2007 Conference on Programming Language Design and Implementation, 2007

2006
Refinement-based context-sensitive points-to analysis for Java.
Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation, 2006

A regulated transitive reduction (RTR) for longer memory race recording.
Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems, 2006

Combinatorial sketching for finite programs.
Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems, 2006

2005
A serializability violation detector for shared-memory server programs.
Proceedings of the ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation, 2005

Programming by sketching for bit-streaming programs.
Proceedings of the ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation, 2005

Jungloid mining: helping to navigate the API jungle.
Proceedings of the ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation, 2005

Demand-driven points-to analysis for Java.
Proceedings of the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2005

Runtime specialization with optimistic heap analysis.
Proceedings of the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2005

2004
Interaction cost and shotgun profiling.
ACM Trans. Archit. Code Optim., 2004

Interaction Cost: For When Event Counts Just Don't Add Up.
IEEE Micro, 2004

2003
Debugging temporal specifications with concept analysis.
Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation 2003, 2003

Using Interaction Costs for Microarchitectural Bottleneck Analysis.
Proceedings of the 36th Annual International Symposium on Microarchitecture, 2003

A "Flight Data Recorder" for Enabling Full-System Multiprocessor Deterministic Replay.
Proceedings of the 30th International Symposium on Computer Architecture (ISCA 2003), 2003

2002
An efficient profile-analysis framework for data-layout optimizations.
Proceedings of the Conference Record of POPL 2002: The 29th SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2002

Mining specifications.
Proceedings of the Conference Record of POPL 2002: The 29th SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 2002

Slack: Maximizing Performance Under Technological Constraints.
Proceedings of the 29th International Symposium on Computer Architecture (ISCA 2002), 2002

2001
Rapid profiling via stratified sampling.
Proceedings of the 28th Annual International Symposium on Computer Architecture, 2001

Focusing processor policies via critical-path prediction.
Proceedings of the 28th Annual International Symposium on Computer Architecture, 2001

2000
ABCD: eliminating array bounds checks on demand.
Proceedings of the 2000 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2000

1999
Load-Reuse Analysis: Design and Evaluation.
Proceedings of the 1999 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 1999

Register Pressure Sensitive Redundancy Elimination.
Proceedings of the Compiler Construction, 8th International Conference, 1999

1998
Path-Sensitive Value-Flow Analysis.
Proceedings of the POPL '98, 1998

Complete removal of redundant expressions (with retrospective)
Proceedings of the 20 Years of the ACM SIGPLAN Conference on Programming Language Design and Implementation 1979-1999, 1998

Complete Removal of Redundant Computations.
Proceedings of the ACM SIGPLAN '98 Conference on Programming Language Design and Implementation (PLDI), 1998

1997
Interprocedural Conditional Branch Elimination.
Proceedings of the ACM SIGPLAN '97 Conference on Programming Language Design and Implementation (PLDI), 1997

Partial Dead Code Elimination using Slicing Transformations.
Proceedings of the ACM SIGPLAN '97 Conference on Programming Language Design and Implementation (PLDI), 1997

Refining Data Flow Information Using Infeasible Paths.
Proceedings of the Software Engineering, 1997

1996
Array Data Flow Analysis for Load-Store Optimizations in Fine-Grained Architectures.
Int. J. Parallel Program., 1996

1995
Adaptive loop transformations for scientific programs.
Proceedings of the Seventh IEEE Symposium on Parallel and Distributed Processing, 1995

Array Data Flow Analysis for Load-Store Optimizations in Superscalar Architectures.
Proceedings of the Languages and Compilers for Parallel Computing, 1995


  Loading...