UWSpace staff members will be away from May 5th to 9th, 2025. We will not be responding to emails during this time. If there are any urgent issues, please contact GSPA at gsrecord@uwaterloo.ca. If any login or authentication issues arise during this time, please wait until UWSpace Staff members return on May 12th for support.
 

Resource Management and Tuples in CⱯ

Loading...
Thumbnail Image

Date

2017-05-01

Authors

Schluntz, Robert

Advisor

Buhr, Peter

Journal Title

Journal ISSN

Volume Title

Publisher

University of Waterloo

Abstract

CⱯ is a modern, non-object-oriented extension of the C programming language. This thesis addresses several critical deficiencies of C, notably: resource management, a limited function-return mechanism, and unsafe variadic functions. To solve these problems, two fundamental language features are introduced: tuples and constructors/destructors. While these features exist in prior programming languages, the contribution of this work is engineering these features into a highly complex type system. C is an established language with a dedicated user-base. An important goal is to add new features in a way that naturally feels like C, to appeal to this core user-base, and due to huge amounts of legacy code, maintaining backwards compatibility is crucial.

Description

Keywords

Programming Languages, C, Tuples, Constructors, Destructors, Variadic Functions, Resource management, RAII, Cforall

LC Subject Headings

Citation