惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
H
Hacker News: Front Page
Stack Overflow Blog
Stack Overflow Blog
B
Blog
I
InfoQ
GbyAI
GbyAI
T
The Blog of Author Tim Ferriss
F
Fortinet All Blogs
Y
Y Combinator Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
月光博客
月光博客
Hugging Face - Blog
Hugging Face - Blog
爱范儿
爱范儿
F
Full Disclosure
Hacker News - Newest:
Hacker News - Newest: "LLM"
Recent Announcements
Recent Announcements
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Jina AI
Jina AI
T
Tailwind CSS Blog
S
Secure Thoughts
P
Privacy International News Feed
美团技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 最新话题
H
Hackread – Cybersecurity News, Data Breaches, AI and More
C
Cybersecurity and Infrastructure Security Agency CISA
Last Week in AI
Last Week in AI
W
WeLiveSecurity
Google Online Security Blog
Google Online Security Blog
P
Privacy & Cybersecurity Law Blog
D
DataBreaches.Net
Engineering at Meta
Engineering at Meta
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
I
Intezer
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Project Zero
Project Zero
V2EX - 技术
V2EX - 技术
H
Heimdal Security Blog
博客园 - Franky
阮一峰的网络日志
阮一峰的网络日志
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Troy Hunt's Blog
V
Vulnerabilities – Threatpost
H
Help Net Security
Martin Fowler
Martin Fowler
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
G
GRAHAM CLULEY
博客园 - 【当耐特】

Cheriton School of Computer Science

PhD Seminar • Bioinformatics • Recurrent Energy-Based Modeling of Side-Chain Allostery | Cheriton School of Computer Science | University of Waterloo PhD Defence • Human–Computer Interaction • Tangible World-in-Miniature Interaction in Virtual Reality | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Bioinformatics • Machine learning reveals genome-wide DNA sequence patterns associated with thermal adaptation in extremophile microbes | Cheriton School of Computer Science | University of Waterloo PhD Defence • Information Retrieval | Human-Computer Interaction • Automated, Large-Scale Cinematic Colour Palette Extraction and Analysis for Movie Recommendations | Cheriton School of Computer Science | University of Waterloo Computer Museum Spring Open House | Cheriton School of Computer Science | University of Waterloo Seminar • Symbolic Computation • A Complete Validated Algorithm for the Initial Value Problem of Ordinary Differential Equations | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Recent Advances in Unified Multimodal Understanding and Generation | Cheriton School of Computer Science | University of Waterloo PhD Defence • Artificial Intelligence | Machine Learning • Physics-Constrained Learning for Scientific Discovery: Inference in Differential Equations and Inverse Design via Generative Models | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Learning to Understand and Generate Multimodal Contents Within a Unified Model | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Learning to Evaluate and Improve Visual Generation from Human Preferences | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Evolving the Knowledge Boundary in Agentic Visual Generation | Cheriton School of Computer Science | University of Waterloo CrySP Speaker Series on Privacy • Breaking the Web is Good for Privacy | Cheriton School of Computer Science | University of Waterloo Seminar • Algorithms & Complexity • Paintability of Bipartite Graphs | Cheriton School of Computer Science | University of Waterloo PhD Defence • Information Retrieval • Breaking Information Silos: Advancing Search Systems for Unified Information Seeking | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Symbolic Computation • Sobolev Regularized Polynomial Features for Robust Handwritten Symbol Recognition | Cheriton School of Computer Science | University of Waterloo PhD Defence • Programming Languages • Implementation Techniques for Lexical Effect Handlers | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Computational Finance • Data Scarcity and the Decumulation Problem: Two Challenges in Finance | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • From Verifiable Rewards to Tool-Using Agents: VerlTool for Agentic Reinforcement Learning | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Understanding Hour-Long Videos with Hybrid Mamba-Transformers | Cheriton School of Computer Science | University of Waterloo Seminar • Human–Computer Interaction | Artificial Intelligence • Scaling Foundation Models & Agentic AI that Supports Healthy Living | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Algorithms and Complexity • Container Lemmas and the Query Complexity of Graph Property Testing | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Human–Computer Interaction • Technology-mediated Group Idea Generation and Evaluation for Artistic Creations Across Disciplines | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Artificial Intelligence | Machine Learning • A Unified Perturbation Framework for Analyzing Leaderboard Stability and Manipulation | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Artificial Intelligence | Human–Computer Interaction • AI in Mental Health: Clinician Perceptions and the Need for AI Literacy in Participatory Research | Cheriton School of Computer Science | University of Waterloo PhD Defence • Artificial Intelligence | Machine Learning • Multilingual Embeddings: Data, Training, and Understanding | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Data Systems • Evaluating LLM Robustness Under Adversarial and Conflicting Evidence in Health Question Answering and Claim Verification | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Symbolic Computation • Stability of Sobolev-Regularized Polynomial Differentiation Matrices | Cheriton School of Computer Science | University of Waterloo PhD Defence • Artificial Intelligence | Machine Learning • Gradient-based Methods for Multi-Objective Optimization with Applications in Machine Learning | Cheriton School of Computer Science | University of Waterloo PhD Defence • Artificial Intelligence | Machine Learning • Towards Foundation Models for Text-Rich Multimodal Tabular Data | Cheriton School of Computer Science | University of Waterloo Seminar • Algorithms and Complexity • A Strong Linear Programming Relaxation for Weighted Tree Augmentation | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Data Systems • Query Expansion in the Era of Large Language Models | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Algorithms and Complexity • Multistroke Character Recognition Using Orthogonal Polynomial Representations | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Basis Transformer as a Foundation Model for Multimodal Tabular Representation Learning | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Quantum Computing • Quantum Colorings of Spheres | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Programming Languages • Tensor Probabilistic Model Checking of Finite-Horizon Markov Chains | Cheriton School of Computer Science | University of Waterloo Seminar • Algorithms and Complexity • Follow-the-Perturbed-Leader with Between-Action Dependence | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Artificial Intelligence | Machine Learning • UniMaia: Steering Chess Policies with Language for Human-like Play | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Cryptography, Security, and Privacy (CrySP) • The Evolution of Differentially Private Clustering | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Software Engineering • Trade-offs in Generic Programming: A Cross-Language Performance Study | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Explainable AI • Atomic Explanations for Retrieval-Augmented LLM Systems | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Cryptography, Security, and Privacy (CrySP) • Parallel Efficient Secure DBSCAN Approximation | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Talk, Judge, Cooperate: Gossip-Driven Indirect Reciprocity in Self-Interested LLM Agents | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Data System • Diversed Model Discovery via Structured Table Discovery | Cheriton School of Computer Science | University of Waterloo PhD Defence • Programming Languages • Design and Implementation of Probabilistic Programming Languages for Sound and Scalable Inference | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Basis Transformers for Multi-Task Tabular Regression | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Data Systems • LLM-Based Frameworks for Information Retrieval Evaluation | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Human–Computer Interaction • DuckDuckTalk: Conversational Agent Teams to Support Active Externalization during Collaborative Data Analysis | Cheriton School of Computer Science | University of Waterloo PhD Defence • Data Systems • Development and Evaluation of Assistive AI Systems for Assessing News Trustworthiness | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Software Engineering • Does Impact Analysis Support the Review of Changes to Build Specifications? | Cheriton School of Computer Science | University of Waterloo PhD Defence • Bioinformatics • Deep Learning for Accurate and Reliable De Novo Peptide Sequencing: From Missing Fragmentation to Open Modification Discovery | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Computer Algebra | Symbolic Computation • Signature-based Gröbner basis Algorithms for Determinantal Ideals | Cheriton School of Computer Science | University of Waterloo DLS: Gilles Brassard — Alan Turing and me | Cheriton School of Computer Science | University of Waterloo Rhetoricon Symposium: Figures & Constructions, Constructions & Figures | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Systems and Networking • Attacks on Approximate Caches in Text-to-Image Diffusion Models | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Data Systems • Differentially Oblivious Multi-way Join | Cheriton School of Computer Science | University of Waterloo PhD Defence • Cryptography, Security, and Privacy (CrySP) • Assumption Stress-Testing for Machine Learning Security | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Artificial Intelligence | Machine Learning • Simulating the Lateral Reader with an Iterative Multi-Agent RAG System for News Trustworthiness Assessment | Cheriton School of Computer Science | University of Waterloo Master’s Thesis Presentation • Human–Computer Interaction • Investigating Osu!: Exploring a Community who Exhibit Extreme Input Performance | Cheriton School of Computer Science | University of Waterloo PhD Defence • Algorithms and Complexity • Towards Fast, Safe and Persistent Concurrent Data Structures for Non-experts | Cheriton School of Computer Science | University of Waterloo PhD Defence • Algorithms and Complexity • The Sample Complexity of Differentially Private Statistical Estimation | Cheriton School of Computer Science | University of Waterloo PhD Defence • Cryptography, Security, and Privacy (CrySP) • Evolving Trade-offs Towards Deployable Private Systems for Data Science | Cheriton School of Computer Science | University of Waterloo PhD Seminar • Cryptography, Security, and Privacy (CrySP) • Selective MPC: Distributed Computation of Differentially Private Key-Value Statistics | Cheriton School of Computer Science | University of Waterloo PhD Defence • Quantum Computing • Circuits, Codes and Capacity | Cheriton School of Computer Science | University of Waterloo PhD Defence • Cryptography, Security, and Privacy (CrySP) • Deployment Concerns in Machine Learning Systems: Unintended Interactions and Accountability | Cheriton School of Computer Science | University of Waterloo PhD Defence • Systems and Networking • Efficient High-precision Monitoring of Network Slices for 5G and Beyond Networks | Cheriton School of Computer Science | University of Waterloo
Master’s Thesis Presentation • Programming Languages • C∀ Collection Library | Cheriton School of Computer Science | University of Waterloo
Joe Petrik · 2026-05-27 · via Cheriton School of Computer Science

Please note: This master’s thesis presentation will take place in DC 3317 and online.

Michael Brooks, Master’s candidate
David R. Cheriton School of Computer Science

Supervisor: Professor Peter Buhr

C strives to fix issues in C, chief among them safety. This thesis presents a significant step forward in C’s goal to remove unsafe pointer operations. It describes improvements to the C language design to support advanced collection features. These features are implemented across the C compiler and runtime libraries. The results maintain another C goal of offering strong backwards compatibility with C. To achieve these goals, this work leverages preexisting C contributions by prior students, particularly novel applications of the compiler’s type system.

All modern programming languages provide these three high-level collections (containers): array, linked-list, and string. Often, the array is part of the programming language, while linked lists are built from (recursive) pointer types, and strings from arrays and/or linked lists. For all three types, languages and/or their libraries supply varying degrees of high-level mechanisms for manipulating these objects at the bulk and component levels, such as copying, slicing, extracting, and iterating among elements. Unfortunately, typical implementations for these key types in C cause 60%–70% of the reported software vulnerabilities involving memory errors, where 70%–80% of hacker attack-vectors target these types. Therefore, hardening these three C types and suggesting programmers use them as their default types goes a long way to increase memory safety in the majority of C programs.

Specifically, an array is provided that tracks its length internally, relieving the user and implementor from managing explicit length arguments/parameters and stopping buffer-overrun errors. This feature requires augmenting the C type system, making array length available at compile and runtime. A linked-list utility is provided that obviates many user-managed recursive pointers, while catering directly to system-programming using intrusive linking. Finally, a string utility is provided with implicit memory management of text in a specialized heap, removing error-prone buffer management, including overrun, and providing a copy-on-write speed boost. For all three utilities, performance is argued to be on-par or surpass those in other comparable languages. With the array, this case is made by showing complete erasure down to a naked C array, modulo runtime bound checks, which are removable more often than with Java-style length management. With the linked list and string, empirical measures are compared with C and C++ comparable libraries. These collections offer programmers workable alternatives to hand-rolling specialized libraries, which is a huge safety benefit, eliminating many system vulnerabilities. The results establish C’s position as a safety-forward programming alternative.


To attend this master’s thesis presentation in person, please go to DC 3317. You can also attend virtually on Zoom.