Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial Aquascope title/abstract #5

Merged
merged 1 commit into from
Oct 31, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions content/meetings/aquascope.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
+++
title = "Aquascope: Improving Ownership Understanding with Datalog, Compilers, and Diagrams"
date = 2024-11-25T19:00:00+01:00 # (Paris/Zurich)
+++

Modern programming languages have increased in complexity. Although type systems provide desirable program guarantees, such as Rust’s beloved ownership types, complex type systems introduce higher cognitive load upfront before developers get executable code. We’ve heard that ownership is difficult to understand, but how can we get developers capably programming in Rust, and later, how can we get them to use more advanced tools like verifiers and proof assistants?

In this talk I will deconstruct why developers struggle to understand Rust ownership and show the evolution of Aquascope, a tool that automatically generates diagrams of Rust’s runtime and compile-time semantics. We will look at the program analysis at the core of Aquascope’s permissions-based ownership model, and discuss how compiler architecture can facilitate (or impede) third-party tools like Aquascope.

Lastly, I will discuss how these techniques can be applied to other domains with complex information, such as verification. We want to empower developers to use our tools, not leave them cursing and walking away.

**Presenter**: [Gavin](https://gavinleroy.com/) is a PhD student and member of the [Cognitive Engineering Lab](https://cel.cs.brown.edu/) at Brown University.

**Meeting Link**: [Zoom Link](https://ethz.zoom.us/j/62101458314)

**Recording Link**: TBA
Loading