Diagramming Program Values by Spatial Refinement

surprisetalk1 pts0 comments

Diagramming Program Values by Spatial Refinement

The Brown PLT Blog

RSS

CONTACT

GROUP PAGE

POSTS BY TAG

Android

April 1

Browsers

Crowdsourcing

Differential Analysis

Diagram

Education

Flowlog

Formal Methods

Higher-Order Functions

In-Flow Peer Review

JavaScript

Large Language Models

Linear Temporal Logic

Misconceptions

Permissions

Programming Languages

Program Planning

Privacy

Properties

Pyret

Python

Resugaring

Rust

Scope

Software-Defined Networking

Spatial

Security

Semantics

Tables

Testing

Tools

Types

User Studies

Verification

Visualization

-->

PREVIOUS POSTS

Diagramming Program Values by Spatial Refinement

LLMs ⭢ Regular Expressions, Responsibly!

Sharing is Scaring: Why is Cloud File-Sharing Hard?

Practical Static Analysis for Privacy Bugs

Lightweight Diagramming for Lightweight Formal Methods

Argus: Interactively Debugging Rust trait Errors

LTL Tutor

Misconceptions In Finite-Trace and Infinite-Trace Linear Temporal Logic

Iterative Student Program Planning using Transformer-Driven Feedback

Differential Analysis: A Summary

Forge: A Tool to Teach Formal Methods

Finding and Fixing Standard Misconceptions About Program Behavior

Privacy-Respecting Type Error Telemetry at Scale

Profiling Programming Language Learning

The Examplar Project: A Summary

A Core Calculus for Documents

Observations on the Design of Program Planning Notations for Students

Conceptual Mutation Testing

Generating Programs Trivially: Student Use of Large Language Models

A Grounded Conceptual Model for Ownership Types in Rust

What Happens When Students Switch (Functional) Languages

Typed-Untyped Interactions: A Comparative Analysis

Little Tricky Logics

Identifying Problem Misconceptions

Performance Preconceptions

Structural Versus Pipeline Composition of Higher-Order Functions

Plan Composition Using Higher-Order Functions

Towards a Notional Machine for Runtime Stacks and Scope

Gradual Soundness: Lessons from Static Python

Applying Cognitive Principles to Model-Finding Output

Automated, Targeted Testing of Property-Based Testing Predicates

A Benchmark for Tabular Types

Student Help-Seeking for (Un)Specified Behaviors

Adding Function Transformers to CODAP

Developing Behavioral Concepts of Higher-Order Functions

Adversarial Thinking Early in Post-Secondary Education

Teaching and Assessing Property-Based Testing

Students Testing Without Coercion

Using Design Alternatives to Learn About Data Organizations

What Help Do Students Seek in TA Office Hours?

Combating Misconceptions by Encouraging Example-Writing

The Hidden Perils of Automated Assessment

Mystery Languages

Resugaring Type Rules

Picking Colors for Pyret Error Messages

Can We Crowdsource Language Design?

Crowdsourcing User Studies for Formal Methods

User Studies of Principled Model Finder Output

A Third Perspective on Hygiene

Scope Inference, a.k.a. Resugaring Scope Rules

The PerMission Store

Examining the Privacy Decisions Facing Users

The Pyret Programming Language: Why Pyret?

Resugaring Evaluation Sequences

Slimming Languages by Reducing Sugar

In-flow Peer Review: An Overview

Tierless Programming for SDNs: Differential Analysis

Tierless Programming for SDNs: Verification

Tierless Programming for SDNs: Optimality

Tierless Programming for SDNs: Events

Tierless Programming for Software-Defined Networks

CS Student Work/Sleep Habits Revealed As Possibly Dangerously Normal

Parley: User Studies for Syntax Design

Typechecking Uses of the jQuery Language

Verifying Extensions' Compliance with Firefox's Private Browsing Mode

From MOOC Students to Researchers

Social Ratings of Application Permissions (Part 4: The Goal)

Social Ratings of Application Permissions (Part 3: Permissions Within a Domain)

Social Ratings of Application Permissions (Part 2: The Effect of Branding)

Social Ratings of Application Permissions (Part 1: Some Basic Conditions)

Aluminum: Principled Scenario Exploration Through Minimality

A Privacy-Affecting Change in Firefox 20

The New MOOR's Law

Essentials of Garbage Collection

(Sub)Typing First Class Field Names

Typing First Class Field Names

S5: Engineering Eval

Progressive Types

Modeling DOM Events

Mechanized LambdaJS

ECMA Announces Official λJS Adoption

Objects in Scripting Languages

S5: Wat?

Belay Lessons: Smarter Web Programming

S5: Semantics for Accessors

S5: A Semantics for Today's JavaScript

The Essence of JavaScript

ADsafety

Diagramming Program Values by Spatial Refinement

Tags: Diagram, Programming Languages, Spatial, Tools, Visualization

Posted on 22 May 2026.

Compilers can vectorize loops you never wrote. IDEs can finish functions before you do. Agents can refactor your codebase from a sentence.<br>And yet, when you want to inspect the value your program just produced, you still use the REPL as if nothing has changed in fifty years: type a variable name, get text back, squint. Here is Python showing you a binary decision diagram:

Node(15,...

programming program spatial language permissions languages

Related Articles