source: doc/generic_types/generic_types.tex @ a53e10a

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since a53e10a was a53e10a, checked in by Aaron Moss <a3moss@…>, 7 years ago

Started OOPSLA paper for generic types

  • Property mode set to 100644
File size: 2.2 KB
Line 
1\documentclass[format=acmlarge, anonymous, review]{acmart}
2
3\citestyle{acmauthoryear}
4
5\newcommand{\CFA}{C$\mathbf\forall$}
6\newcommand{\TODO}{\textbf{TODO}}
7
8\acmJournal{PACMPL}
9
10\title{Generic Types with Efficient Dynamic Layout in \CFA{}}
11
12\author{Aaron Moss}
13\affiliation{%
14        \institution{University of Waterloo}
15        \department{David R. Cheriton School of Computer Science}
16        \streetaddress{Davis Centre, University of Waterloo}
17        \city{Waterloo}
18        \state{ON}
19        \postcode{N2L 3G1}
20        \country{Canada}
21}
22\email{a3moss@uwaterloo.ca}
23
24\terms{generic, types}
25\keywords{generic types, polymorphic functions, Cforall}
26
27\begin{CCSXML}
28<ccs2012>
29<concept>
30<concept_id>10011007.10011006.10011008.10011024.10011025</concept_id>
31<concept_desc>Software and its engineering~Polymorphism</concept_desc>
32<concept_significance>500</concept_significance>
33</concept>
34<concept>
35<concept_id>10011007.10011006.10011008.10011024.10011028</concept_id>
36<concept_desc>Software and its engineering~Data types and structures</concept_desc>
37<concept_significance>500</concept_significance>
38</concept>
39<concept>
40<concept_id>10011007.10011006.10011041.10011047</concept_id>
41<concept_desc>Software and its engineering~Source code generation</concept_desc>
42<concept_significance>300</concept_significance>
43</concept>
44</ccs2012>
45\end{CCSXML}
46
47\ccsdesc[500]{Software and its engineering~Polymorphism}
48\ccsdesc[500]{Software and its engineering~Data types and structures}
49\ccsdesc[300]{Software and its engineering~Source code generation}
50
51% \abstract{Abstract goes here.}
52\begin{abstract}
53\TODO{} Write abstract.
54\end{abstract}
55
56\begin{document}
57
58\maketitle
59
60\section{Introduction \& Background}
61\CFA{}\footnote{Pronounced ``C-for-all'', and written \CFA{} or Cforall.} is an evolutionary modernization of the C programming language which aims to add modern language features to C while maintaining both source compatibility with C and a familiar mental model for programmers. This paper describes how generic types are designed and implemented in \CFA{}, and how they interact with \CFA{}'s polymorphic functions.
62
63\CFA{}'s polymorphism was originally formalized by \citet{Ditchfield92}, and first implemented by \citet{Bilson03}.
64
65\bibliographystyle{ACM-Reference-Format}
66\bibliography{generic_types}
67
68\end{document}
Note: See TracBrowser for help on using the repository browser.