- Timestamp:
- May 15, 2017, 3:27:47 PM (7 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- db0fa7c
- Parents:
- dbfb35d (diff), 9ff8310 (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. - Location:
- doc
- Files:
-
- 7 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/LaTeXmacros/common.tex
rdbfb35d r3bd1eb4 11 11 %% Created On : Sat Apr 9 10:06:17 2016 12 12 %% Last Modified By : Peter A. Buhr 13 %% Last Modified On : Tue Apr 18 17:16:13201714 %% Update Count : 2 7013 %% Last Modified On : Sun May 14 18:17:09 2017 14 %% Update Count : 295 15 15 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 16 16 … … 36 36 % Names used in the document. 37 37 38 \newcommand{\CFA}{C $\mathbf\forall$\xspace} % Cforall symbolic name38 \newcommand{\CFA}{C\raisebox{\depth}{\rotatebox{180}{\textscale{1.05}{\textsf{A}}}}\xspace} % Cforall symbolic name 39 39 \newcommand{\CFL}{Cforall\xspace} % Cforall symbolic name 40 \newcommand{\Celeven}{C11\xspace} % C11 symbolic name 40 41 \newcommand{\CC}{\rm C\kern-.1em\hbox{+\kern-.25em+}\xspace} % C++ symbolic name 41 42 \newcommand{\CCeleven}{\rm C\kern-.1em\hbox{+\kern-.25em+}11\xspace} % C++11 symbolic name … … 43 44 \newcommand{\CCseventeen}{\rm C\kern-.1em\hbox{+\kern-.25em+}17\xspace} % C++17 symbolic name 44 45 \newcommand{\CCtwenty}{\rm C\kern-.1em\hbox{+\kern-.25em+}20\xspace} % C++20 symbolic name 45 \newcommand{\Celeven}{C11\xspace} % C11 symbolic name46 46 \newcommand{\Csharp}{C\raisebox{-0.7ex}{\Large$^\sharp$}\xspace} % C# symbolic name 47 47 … … 67 67 \usepackage{pslatex} % reduce size of san serif font 68 68 \usepackage{relsize} % must be after change to small or selects old size 69 \usepackage{rotating} 69 70 70 71 % reduce size of chapter/section titles … … 97 98 \newcommand{\italic}[1]{\emph{\hyperpage{#1}}} 98 99 \newcommand{\definition}[1]{\textbf{\hyperpage{#1}}} 99 \newcommand{\see}[1]{\emph{see} 100 \newcommand{\see}[1]{\emph{see}~#1} 100 101 101 102 % Define some commands that produce formatted index entries suitable for cross-references. … … 221 222 }% 222 223 223 % Go programming language: https://github.com/julienc91/listings-golang/blob/master/listings-golang.sty 224 \lstdefinelanguage{Golang}{ 225 morekeywords=[1]{package,import,func,type,struct,return,defer,panic,recover,select,var,const,iota,},% 226 morekeywords=[2]{string,uint,uint8,uint16,uint32,uint64,int,int8,int16,int32,int64, 227 bool,float32,float64,complex64,complex128,byte,rune,uintptr, error,interface},% 228 morekeywords=[3]{map,slice,make,new,nil,len,cap,copy,close,true,false,delete,append,real,imag,complex,chan,},% 229 morekeywords=[4]{for,break,continue,range,goto,switch,case,fallthrough,if,else,default,},% 230 morekeywords=[5]{Println,Printf,Error,},% 231 sensitive=true,% 232 morecomment=[l]{//},% 233 morecomment=[s]{/*}{*/},% 234 morestring=[b]',% 235 morestring=[b]",% 236 morestring=[s]{`}{`},% 237 } 238 239 % CFA programming language, based on ANSI C (with some gcc additions) 240 \lstdefinelanguage{Pseudo}{ 241 morekeywords={string,uint,int,bool,float},% 242 sensitive=true,% 243 morecomment=[l]{//},% 244 morecomment=[s]{/*}{*/},% 245 morestring=[b]',% 246 morestring=[b]",% 247 morestring=[s]{`}{`},% 248 }% 249 250 % CFA programming language, based on ANSI C (with some gcc additions) 251 \lstdefinelanguage{CFA}[ANSI]{C}{ 252 morekeywords={_Alignas,_Alignof,__alignof,__alignof__,asm,__asm,__asm__,_At,_Atomic,__attribute,__attribute__,auto, 253 _Bool,catch,catchResume,choose,_Complex,__complex,__complex__,__const,__const__,disable,dtype,enable,__extension__, 254 fallthrough,fallthru,finally,forall,ftype,_Generic,_Imaginary,inline,__label__,lvalue,_Noreturn,one_t,otype,restrict,_Static_assert, 255 _Thread_local,throw,throwResume,trait,try,ttype,typeof,__typeof,__typeof__,zero_t}, 256 }% 224 \usepackage{lstlang} 257 225 258 226 \newcommand{\CFADefaults}{% … … 292 260 {} 293 261 294 295 262 % Local Variables: % 296 263 % tab-width: 4 % -
doc/generic_types/generic_types.tex
rdbfb35d r3bd1eb4 6 6 \usepackage{upquote} % switch curled `'" to straight 7 7 \usepackage{listings} % format program code 8 \usepackage{rotating} 8 9 \usepackage[usenames]{color} 9 10 … … 48 49 49 50 % Useful macros 50 \newcommand{\CFA}{C$\mathbf\forall$\xspace} % Cforall symbolic name 51 \newcommand{\CFA}{C\raisebox{\depth}{\rotatebox{180}{\textsf{A}}}\hspace{-1pt}\xspace} % Cforall symbolic name 52 %\newcommand{\CFA}{C$\mathbf\forall$\xspace} % Cforall symbolic name 51 53 \newcommand{\CC}{\rm C\kern-.1em\hbox{+\kern-.25em+}\xspace} % C++ symbolic name 52 54 \newcommand{\CCeleven}{\rm C\kern-.1em\hbox{+\kern-.25em+}11\xspace} % C++11 symbolic name … … 97 99 \acmJournal{PACMPL} 98 100 99 \title{Generic and Tuple Types with Efficient Dynamic Layout in \ CFA}101 \title{Generic and Tuple Types with Efficient Dynamic Layout in \protect\CFA} 100 102 101 103 \author{Aaron Moss} … … 197 199 \label{sec:poly-fns} 198 200 199 \CFA 's polymorphism was originally formalized by \citet{Ditchfield92}, and first implemented by \citet{Bilson03}.201 \CFA{}\hspace{1pt}'s polymorphism was originally formalized by \citet{Ditchfield92}, and first implemented by \citet{Bilson03}. 200 202 The signature feature of \CFA is parametric-polymorphic functions~\citep{forceone:impl,Cormack90,Duggan96} with functions generalized using a @forall@ clause (giving the language its name): 201 203 \begin{lstlisting} … … 950 952 } 951 953 \end{lstlisting} 952 \caption{\ CFA Benchmark Test}954 \caption{\protect\CFA Benchmark Test} 953 955 \label{fig:BenchmarkTest} 954 956 \end{figure} … … 1020 1022 While \CC provides good backwards compatibility with C, it has a steep learning curve for many of its extensions. 1021 1023 For example, polymorphism is provided via three disjoint mechanisms: overloading, inheritance, and templates. 1022 The overloading is restricted because resolution does not us ingthe return type, inheritance requires learning object-oriented programming and coping with a restricted nominal-inheritance hierarchy, templates cannot be separately compiled resulting in compilation/code bloat and poor error messages, and determining how these mechanisms interact and which to use is confusing.1024 The overloading is restricted because resolution does not use the return type, inheritance requires learning object-oriented programming and coping with a restricted nominal-inheritance hierarchy, templates cannot be separately compiled resulting in compilation/code bloat and poor error messages, and determining how these mechanisms interact and which to use is confusing. 1023 1025 In contrast, \CFA has a single facility for polymorphic code supporting type-safe separate-compilation of polymorphic functions and generic (opaque) types, which uniformly leverage the C procedural paradigm. 1024 1026 The key mechanism to support separate compilation is \CFA's \emph{explicit} use of assumed properties for a type. -
doc/rob_thesis/thesis.bib
-
Property
mode
changed from
100755
to100644
-
Property
mode
changed from
-
doc/user/Makefile
rdbfb35d r3bd1eb4 47 47 48 48 ${basename ${DOCUMENT}}.dvi : Makefile ${GRAPHS} ${PROGRAMS} ${PICTURES} ${FIGURES} ${SOURCES} ${basename ${DOCUMENT}}.tex \ 49 ../LaTeXmacros/common.tex ../LaTeXmacros/ indexstyle ../bibliography/cfa.bib49 ../LaTeXmacros/common.tex ../LaTeXmacros/lstlang.sty ../LaTeXmacros/indexstyle ../bibliography/cfa.bib 50 50 # Conditionally create an empty *.ind (index) file for inclusion until makeindex is run. 51 51 if [ ! -r ${basename $@}.ind ] ; then touch ${basename $@}.ind ; fi
Note: See TracChangeset
for help on using the changeset viewer.