Changeset 8b590a4 for doc/theses/aaron_moss_PhD/phd/frontpgs.tex
- Timestamp:
- Mar 13, 2019, 11:35:33 AM (7 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, cleanup-dtors, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum, stuck-waitfor-destruct
- Children:
- d078afd
- Parents:
- 1c35c78 (diff), 30e32b2 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - File:
-
- 1 edited
-
doc/theses/aaron_moss_PhD/phd/frontpgs.tex (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
doc/theses/aaron_moss_PhD/phd/frontpgs.tex
r1c35c78 r8b590a4 62 62 \bigskip 63 63 64 % \noindent 65 % \begin{tabbing} 66 % Internal-External Member: \= \kill % using longest text to define tab length 67 % External Examiner: \> Bruce Bruce \\ 68 % \> Professor, Dept. of Philosophy of Zoology, University of Wallamaloo \\ 69 % \end{tabbing} 70 % \bigskip 64 \noindent 65 \begin{tabbing} 66 Internal-External Member: \= \kill % using longest text to define tab length 67 External Examiner: \> Doug Lea \\ 68 \> Professor, Computer Science Department, \\ 69 \> State Univesity of New York at Oswego \\ 70 \end{tabbing} 71 \bigskip 71 72 72 73 \noindent … … 74 75 Internal-External Member: \= \kill % using longest text to define tab length 75 76 Supervisor: \> Peter Buhr \\ 76 \> Professor, School of Computer Science, University of Waterloo \\ 77 \> Associate Professor, School of Computer Science, \\ 78 \> University of Waterloo \\ 77 79 \end{tabbing} 78 80 \bigskip … … 81 83 \begin{tabbing} 82 84 Internal-External Member: \= \kill % using longest text to define tab length 83 Internal Members: \> Gregor Richards \\ 84 \> Professor, School of Computer Science, University of Waterloo \\ 85 \> Ond\v{r}ej Lhot\a'ak \\ 86 \> Professor, School of Computer Science, University of Waterloo \\ 85 Internal Members: \> Ond\v{r}ej Lhot\a'ak \\ 86 \> Associate Professor, School of Computer Science, \\ 87 \>University of Waterloo \\ 88 \\ 89 \> Gregor Richards \\ 90 \> Assistant Professor, School of Computer Science, \\ 91 \> University of Waterloo \\ 87 92 \end{tabbing} 88 % \bigskip 89 90 % \noindent 91 % \begin{tabbing} 92 % Internal-External Member: \= \kill % using longest text to define tab length 93 % Internal-External Member: \> Deepa Thotta \\ 94 % \> Professor, Dept. of Philosophy, University of Waterloo \\ 95 % \end{tabbing} 96 % \bigskip 93 \bigskip 94 95 \noindent 96 \begin{tabbing} 97 Internal-External Member: \= \kill % using longest text to define tab length 98 Internal-External Member: \> Werner Dietl \\ 99 \> Assistant Professor, Electrical and Computer Engineering, \\ 100 \> University of Waterloo \\ 101 \end{tabbing} 102 % \bigskip 97 103 98 104 % \noindent … … 124 130 \begin{center}\textbf{Abstract}\end{center} 125 131 126 This is the abstract. 132 The C programming language has been an important software development tool for decades. 133 \CFA{} is a new programming language designed with strong backwards-compatibility to take advantage of widely distributed C programming expertise and the large deployed base of C code, paired with modern language features to improve developer productivity. 134 135 This thesis presents a number of improvements to \CFA{}. 136 The author has developed one major new language feature, generic types, in a way that integrates naturally with both the existing polymorphism features of \CFA{} and the translation-unit-based encapsulation model of C. 137 This thesis also presents a number of smaller refinements to the \CFA{} overload resolution rules, each of which improves the expressivity or intuitive nature of the language. 138 139 This thesis also includes a number of practical improvements to \CFA{} compilation performance, focused on the expression resolution pass, which is the main bottleneck. 140 These include better algorithms for argument-parameter matching and type assertion satisfaction, as well as a new type-environment data-structure based on a novel variant of union-find. 141 The compilation performance improvements have all been experimentally validated with a new prototype system that encapsulates the key aspects of the \CFA{} language; this prototype is a promising basis for future research and a technical contribution of this work. 127 142 128 143 \cleardoublepage … … 131 146 % ------------------------------- 132 147 133 % \begin{center}\textbf{Acknowledgements}\end{center} 134 135 % I would like to thank all the little people who made this thesis possible. 136 % \cleardoublepage 148 \begin{center}\textbf{Acknowledgements}\end{center} 149 150 Though a doctoral thesis is an individual project, I could not have completed it without the help and support of many members of my community. 151 This thesis would not exist in the form it does without the mentorship of my advisor, Peter Buhr, who has ably led the \CFA{} team while giving me both the advantage of his decades of experience and the freedom to follow my own interests. 152 153 My work on \CFA{} does not exist in a vaccuum, and it has been a pleasure and a privilege to collaborate with the members of the \CFA{} team: Andrew Beach, Richard Bilson, Michael Brooks, Bryan Chan, Thierry Delisle, Glen Ditchfield, Brice Dobry, Rob Schluntz, and others. 154 I gratefully acknowledge the financial support of the National Science and Engineering Council of Canada and Huawei Ltd.\ for this project. 155 I would also like to thank of my thesis committee, Werner Dietl, Doug Lea, Ond\v{r}ej Lhot\a'ak, and Gregor Richards, for the time and effort they have invested in providing constructive feedback to refine this work. 156 I am indebted to Peter van Beek and Ian Munro for their algorithmic expertise and willingness to share their time with me. 157 I have far too many colleagues in the Programming Languages Group and School of Computer Science to name, but I deeply appreciate their camaradarie; specifically with regard to the production of this thesis, I would like to thank Nathan Fish for recommending my writing soundtrack, and Sharon Choy for her unfailing supply of encouraging rabbit animations. 158 159 Finally, to all my friends and family who have supported me and made Kitchener-Waterloo home these past seven years, thank you, I could not have done it without you; most especially, Christina Moss, you are the best of wives and best of women, your support has kept me going through the ups and downs of research, and your partnership is key to all my successes. 160 161 \cleardoublepage 137 162 138 163 % D E D I C A T I O N … … 141 166 % \begin{center}\textbf{Dedication}\end{center} 142 167 143 % This is dedicated to the one I love. 168 % To Christina, who has spent too many hours politely listening to me work out the technical minutiae of this thesis, I love you, and I won't make you read it. 169 144 170 % \cleardoublepage 145 171
Note:
See TracChangeset
for help on using the changeset viewer.