Skip to content
Book Open access

Towards Extensible, Auditable, and Modular Measurement Specification and Execution in Computer Networking

Jul 2026 · Applied Networking Research Workshop · pp. 103-105 · 0 citations · 5 references
Computer Science

Abstract

We present the Measurement Template Library (Mtl), a Go library and runtime for specifying and executing measurements. Mtl provides a framework for specifying and executing extensible, modular, and auditable measurements using generic programming techniques. By leveraging the notion of polymorphic measurement programs, we show how to lift measurement tools/probes into a typed computational context and model. This lifting supports the structured definition and refinement of common data structures, algorithms, and concurrency and interleaving semantics which appear in measurement work. In short, we show that measurement points (i.e., the Linux ping utility, scamper, or RIPE Atlas) are types, and measurements are type expressions.

Read PDF

Similar papers

Book Open access Aug 2026

An Incremental Approach to JIT Construction

Just-in-time (JIT) compilation has become a common tool for language runtimes. JIT compilers have a reputation for being complex, leaving a pedagogical gap between foundational Ahead-of-Time (AOT) concepts and dynamic code generation. This paper presents an incremental, classroom-scale approach to building a JIT compiler in manageable steps. By contrasting an AOT and a JIT backend, we expose core dynamic concerns, including executable buffers, persistent interactive state, mutation, and runtime type optimizations. The result is a minimal yet realistic educational JIT that successfully supports a Read-Eval-Print Loop (REPL) and a first-call specialization mechanism.

Shaurya Raswan, Mark Barbone, Nicolás Lehmann et al. · 0 citations
Preprint Jul 2026

Allocation Tracking and Parameter Checking for Parallel Programming Models using Contracts

Correctness checking tools for High-Performance Computing programs are typically limited to specific parallel programming models such as MPI or OpenSHMEM. The CoVer framework previously addressed this by introducing a generic, contract-based approach that decoupled API requirements from the core tool. However, CoVer's effectiveness remains bounded by the expressiveness of its underlying contract language, restricting the types of errors it can verify. This paper presents an extension to the CoVer contract language designed to capture and check a broader range of error classes. Our extensions introduce generic parameter checking and allocation tracking, while keeping generality across both programming model and language. We evaluate these extensions and demonstrate that analysis accuracy remains consistent across multiple languages, reinforcing the framework's general applicability. While the additional runtime analyses naturally incur a performance overhead, these improvements greatly enhance CoVer's utility with a significant accuracy improvement.

Yussur Mustafa Oraji, Christian H. Bischof · 0 citations
Book Open access Aug 2026

VeriLucid: A Verification-aware Data-plane Programming Language

This paper introduces the first verification-aware data-plane language: VeriLucid, which aims to unify programming and specification in one high-level language, with built-in proof automation.

John Sonchack, P. Zave, Jennifer Rexford · 0 citations
Preprint Aug 2026

Composable Building Blocks for Resilient Asynchronous Code

Asynchronous calls to a network service, database, or language model must cope with transient errors, slow or missing responses, throttling, and atomicity violations. We show how higher-order combinators solve such problems uniformly, including timeouts, retries, rate limiting, caching, reentrant locking, and cancellation. Every combinator maps an async function to another of the same type, so they share a uniform \emph{shape} and compose by nesting into one expression that implements a program's whole resilience and concurrency policy, leaving its business logic untouched. The same design spans both of JavaScript's native async shapes, promise-returning and async-iterable-returning functions, with one vocabulary of concerns. Solutions exist across the ecosystem but are scattered over differently shaped libraries that are hard to combine. We present case studies where the combinators are used to harden real packages by adding missing resilience or concurrency control and replacing bespoke policy.

Frank Tip · 0 citations