Changeset 166b384
- Timestamp:
- Sep 25, 2021, 4:08:33 PM (3 years ago)
- Branches:
- ADT, ast-experimental, enum, forall-pointer-decay, master, pthread-emulation, qualifiedEnum
- Children:
- 86bd8538
- Parents:
- f93c50a
- Location:
- doc/theses/andrew_beach_MMath
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/theses/andrew_beach_MMath/features.tex
rf93c50a r166b384 84 84 \paragraph{Hierarchy} 85 85 A common way to organize exceptions is in a hierarchical structure. 86 This pattern comes from object-orient ated languages where the86 This pattern comes from object-oriented languages where the 87 87 exception hierarchy is a natural extension of the object hierarchy. 88 88 … … 131 131 A common feature in many programming languages is a tool to pair code 132 132 (behaviour) with data. 133 In \CFA this is done with the virtual system,133 In \CFA, this is done with the virtual system, 134 134 which allow type information to be abstracted away, recovered and allow 135 135 operations to be performed on the abstract objects. -
doc/theses/andrew_beach_MMath/intro.tex
rf93c50a r166b384 138 138 message as a payload\cite{Ada12}. 139 139 140 The modern flag -ship for termination exceptionsis \Cpp,140 The modern flagship for termination exceptions -- if one exists -- is \Cpp, 141 141 which added them in its first major wave of non-object-orientated features 142 142 in 1990.\cite{CppHistory} … … 195 195 included in the \Cpp standard. 196 196 % https://en.wikipedia.org/wiki/Exception_handling 197 Since then, resumptions have been ignored in main -stream programming languages.197 Since then, resumptions have been ignored in mainstream programming languages. 198 198 However, resumption is being revisited in the context of decades of other 199 199 developments in programming languages. … … 217 217 218 218 %\subsection 219 More recently exceptions,seem to be vanishing from newer programming219 More recently, exceptions seem to be vanishing from newer programming 220 220 languages, replaced by ``panic". 221 221 In Rust, a panic is just a program level abort that may be implemented by … … 383 383 Because of their cost, exceptions are rarely used for hot paths of execution. 384 384 Hence, there is an element of self-fulfilling prophecy as implementation 385 techniques have been focused on making them cheap to set -up,385 techniques have been focused on making them cheap to set up, 386 386 happily making them expensive to use in exchange. 387 387 This difference is less important in higher-level scripting languages, -
doc/theses/andrew_beach_MMath/uw-ethesis-frontpgs.tex
rf93c50a r166b384 156 156 \begin{center}\textbf{Acknowledgements}\end{center} 157 157 158 I would like to thank all the people who made this thesis possible. 159 (I'm waiting until who is involved is finalized.) 158 As is tradition and his due, I would like to begin by thanking my 159 supervisor Peter Buhr. From accepting me in a first place, 160 to helping me run performance tests, I would not be here without him. 161 Also if there was an ``artist" field here he would be listed there as well, 162 he helped me a lot with the diagrams. 163 164 I would like to thank the readers 165 Gregor Richards and Yizhou Zhang 166 for their feedback and approval. 167 The presentation of the thesis has definitely been improved with their 168 feedback. 169 170 I also thank the entire Cforall Team who built the rest of the 171 \CFA compiler. From the existing features I used in my work, to the 172 internal tooling that makes further development easier and the optimizations 173 that make running tests pass by quickly. 174 This includes: Aaron Moss, Rob Schluntz, Thierry Delisle, Michael Brooks, 175 Mubeen Zulfieqar \& Fangren Yu. 176 177 And thank-you Henry Xue, the co-op student who 178 converted my macro implementation of exception declarations into 179 the compiler features presented in this thesis. 180 181 Finally I thank my family, who are still relieved I learned how to read. 160 182 161 183 \cleardoublepage
Note: See TracChangeset
for help on using the changeset viewer.