activity
20182023
most citedScanner: Efficient Video Analysis at Scale

62 citations · 109 across the 12 of their papers we have counts for

collaborators

12 papers

cs.PL2023★ 1 cited

Typed Design Patterns for the Functional Era

Will Crichton

This paper explores how design patterns could be revisited in the era of mainstream functional programming languages. I discuss the kinds of knowledge that ought to be represented…

cs.PL2021

Modular Information Flow through Ownership

Will Crichton, Marco Patrignani, Maneesh Agrawala +1

Statically analyzing information flow, or how data influences other data within a program, is a challenging task in imperative languages. Analyzing pointers and mutations requires…

cs.CY2021★ 3 cited

Automating Program Structure Classification

Will Crichton, Georgia Gabriela Sampaio, Pat Hanrahan

When students write programs, their program structure provides insight into their learning process. However, analyzing program structure by hand is time-consuming, and teachers nee…

cs.HC2021★ 13 cited

The Role of Working Memory in Program Tracing

Will Crichton, Maneesh Agrawala, Pat Hanrahan

Program tracing, or mentally simulating a program on concrete inputs, is an important part of general program comprehension. Programs involve many kinds of virtual state that must…

cs.SE2020

Documentation Generation as Information Visualization

Will Crichton

Automatic documentation generation tools, or auto docs, are widely used to visualize information about APIs. However, each auto doc tool comes with its own unique representation of…

cs.PL2020★ 2 cited

The Usability of Ownership

Will Crichton

Ownership is the concept of tracking aliases and mutations to data, useful for both memory safety and system design. The Rust programming language implements ownership via the borr…

cs.CY2020★ 4 cited

Analyzing Who and What Appears in a Decade of US Cable TV News

James Hong, Will Crichton, Haotian Zhang +9

Cable TV news reaches millions of U.S. households each day, meaning that decisions about who appears on the news and what stories get covered can profoundly influence public opinio…

cs.DB2019★ 20 cited

Rekall: Specifying Video Events using Compositions of Spatiotemporal Labels

Daniel Y. Fu, Will Crichton, James Hong +7

Many real-world video analysis applications require the ability to identify domain-specific events in video, such as interviews and commercials in TV news broadcasts, or action seq…

cs.HC2019★ 2 cited

Human-Centric Program Synthesis

Will Crichton

Program synthesis techniques offer significant new capabilities in searching for programs that satisfy high-level specifications. While synthesis has been thoroughly explored for i…

cs.PL2019★ 1 cited

From Theory to Systems: A Grounded Approach to Programming Language Education

Will Crichton

I present a new approach to teaching a graduate-level programming languages course focused on using systems programming ideas and languages like WebAssembly and Rust to motivate PL…

cs.HC2019★ 1 cited

Identifying Barriers to Adoption for Rust through Online Discourse

Anna Zeng, Will Crichton

Rust is a low-level programming language known for its unique approach to memory-safe systems programming and for its steep learning curve. To understand what makes Rust difficult…

cs.CV2018★ 62 cited

Scanner: Efficient Video Analysis at Scale

Alex Poms, Will Crichton, Pat Hanrahan +1

A growing number of visual computing applications depend on the analysis of large video collections. The challenge is that scaling applications to operate on these datasets require…