Changeset f51aefb for doc


Ignore:
Timestamp:
Nov 1, 2016, 3:18:59 PM (8 years ago)
Author:
Aaron Moss <a3moss@…>
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:
84118d8
Parents:
40744af8 (diff), 0afffee (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.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

Location:
doc
Files:
10 added
3 edited

Legend:

Unmodified
Added
Removed
  • doc/LaTeXmacros/common.tex

    r40744af8 rf51aefb  
    11%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -*- Mode: Latex -*- %%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2 %% 
     2%%
    33%% Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
    44%%
    55%% The contents of this file are covered under the licence agreement in the
    66%% file "LICENCE" distributed with Cforall.
    7 %% 
    8 %% common.tex -- 
    9 %% 
     7%%
     8%% common.tex --
     9%%
    1010%% Author           : Peter A. Buhr
    1111%% Created On       : Sat Apr  9 10:06:17 2016
    1212%% Last Modified By : Peter A. Buhr
    13 %% Last Modified On : Sun Aug 14 08:27:29 2016
    14 %% Update Count     : 231
     13%% Last Modified On : Tue Oct 25 22:04:19 2016
     14%% Update Count     : 234
    1515%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1616
     
    4141\newcommand{\CCeleven}{\rm C\kern-.1em\hbox{+\kern-.25em+}11\xspace} % C++11 symbolic name
    4242\newcommand{\Celeven}{C11\xspace}               % C11 symbolic name
     43\newcommand{\Csharp}{C\raisebox{0.4ex}{\#}\xspace}      % C# symbolic name
    4344
    4445%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     
    226227
    227228% CFA programming language, based on ANSI C (with some gcc additions)
     229\lstdefinelanguage{Pseudo}{
     230        morekeywords={string,uint,int,bool,float},%
     231        sensitive=true,%
     232        morecomment=[l]{//},%
     233        morecomment=[s]{/*}{*/},%
     234        morestring=[b]',%
     235        morestring=[b]",%
     236        morestring=[s]{`}{`},%
     237}%
     238
     239\lstset{
     240language=Pseudo,
     241columns=fullflexible,
     242basicstyle=\linespread{0.9}\tt\small,           % reduce line spacing and use typewriter font
     243stringstyle=\sf\color{Mahogany},                        % use sanserif font
     244commentstyle=\itshape\color{OliveGreen},                % green and italic comments
     245tabsize=4,                                                      % 4 space tabbing
     246xleftmargin=\parindentlnth,                             % indent code to paragraph indentation
     247extendedchars=true,                                     % allow ASCII characters in the range 128-255
     248escapechar=§,                                           % escape to latex in CFA code
     249mathescape=true,                                                % allow $...$ LaTeX math escapes in code
     250%keepspaces=true,                                               %
     251showstringspaces=false,                                 % do not show spaces with cup
     252showlines=true,                                         % show blank lines at end of code
     253aboveskip=4pt,                                          % spacing above/below code block
     254belowskip=3pt,
     255moredelim=**[is][\color{red}]{®}{®},    % red highlighting
     256moredelim=**[is][\color{blue}]{ß}{ß},   % blue highlighting
     257moredelim=**[is][\color{OliveGreen}]{¢}{¢}, % green highlighting
     258moredelim=[is][\lstset{keywords={}}]{¶}{¶}, % temporarily turn off keywords
     259% replace/adjust listing characters that look bad in sanserif
     260literate={-}{\raisebox{-0.15ex}{\texttt{-}}}1 {^}{\raisebox{0.6ex}{$\scriptscriptstyle\land\,$}}1 {©}{{\"u}}1
     261        {~}{\raisebox{0.3ex}{$\scriptstyle\sim\,$}}1 {_}{\makebox[1.2ex][c]{\rule{1ex}{0.1ex}}}1 {`}{\ttfamily\upshape\hspace*{-0.1ex}`}1
     262        {<-}{$\leftarrow$}2 {=>}{$\Rightarrow$}2,
     263}%
     264
     265% CFA programming language, based on ANSI C (with some gcc additions)
    228266\lstdefinelanguage{CFA}[ANSI]{C}{
    229267        morekeywords={_Alignas,_Alignof,__alignof,__alignof__,asm,__asm,__asm__,_At,_Atomic,__attribute,__attribute__,auto,
     
    260298\lstMakeShortInline©    % single-character for \lstinline
    261299
     300
    262301\let\Oldthebibliography\thebibliography
    263302\renewcommand\thebibliography[1]{
  • doc/bibliography/cfa.bib

    r40744af8 rf51aefb  
    2121%  tcs: Theoretical Computer Science
    2222@string{ieeepds="IEEE Transactions on Parallel and Distributed Systems"}
     23% @string{ieeepds="IEEE Trans. Parallel Distrib. Syst."}
    2324@string{ieeese="IEEE Transactions on Software Engineering"}
     25% @string{ieeese="IEEE Trans. Softw. Eng."}
    2426@string{spe="Software---\-Practice and Experience"}
     27% @string{spe="Softw. Pract. Exp."}
     28@string{ccpe="Concurrency and Computation: Practice and Experience"}
     29% @string{ccpe="Concurrency Comput. Pract. Exp."}
    2530@string{sigplan="SIGPLAN Notices"}
     31% @string{sigplan="SIGPLAN Not."}
    2632@string{joop="Journal of Object-Oriented Programming"}
     33% @string{joop="J. of Object-Oriented Program."}
    2734@string{popl="Conference Record of the ACM Symposium on Principles of Programming Languages"}
    2835@string{osr="Operating Systems Review"}
    2936@string{pldi="Programming Language Design and Implementation"}
     37@string{mathann="Mathematische Annalen"}
     38% @string{mathann="Math. Ann."}
    3039
    3140% A
     
    3948    booktitle   = {Parallel Programming in {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
    4049    publisher   = {MIT Press},
     50    address     = {New York},
    4151    series      = {Scientific and Engineering Computation Series},
    4252    year        = 1996,
     
    120130    year        = 1996,
    121131    pages       = {483-499},
    122     publisher   = {Addison-Wesley Longman Publishing Co., Inc.},
    123     address     = {Boston, MA, USA},
     132    publisher   = {Addison-Wesley Longman Publishing},
     133    address     = {Boston},
    124134}
    125135
     
    161171    author      = {Gul A. Agha},
    162172    title       = {Actors: A Model of Concurrent Computation in Distributed Systems},
    163     publisher   = {MIT Press, Cambridge, Mass.},
     173    publisher   = {MIT Press, Cambridge},
    164174    year        = 1986
    165175}
     
    311321    publisher   = {Microsoft Press},
    312322    year        = 1997,
    313     edition     = {third},
     323    edition     = {3rd},
    314324}
    315325
     
    325335    year        = 1977,
    326336    pages       = {604-605},
     337}
     338
     339@manual{Akka,
     340    keywords    = {Akka actor model},
     341    contributer = {pabuhr@plg},
     342    title       = {{A}kka {S}cala Documentation, Release 2.4.11},
     343    organization= {Lightbend Inc.},
     344    month       = sep,
     345    year        = 2016,
     346    note        = {\href{http://doc.akka.io/docs/akka/2.4/AkkaScala.pdf}{http://\-doc.akka.io/\-docs/\-akka/\-2.4/\-AkkaScala.pdf}},
    327347}
    328348
     
    378398    author      = {M. Raynal},
    379399    title       = {Algorithms for Mutual Exclusion},
    380     publisher   = {The MIT Press},
    381     address     = {Cambridge, Massachusetts},
     400    publisher   = {MIT Press},
     401    address     = {Cambridge},
    382402    series      = {Scientific Computation Series},
    383403    year        = 1986,
     
    394414    pages       = {329-342},
    395415    publisher   = {Springer},
     416    address     = {New York},
    396417    year        = 2005,
    397418    volume      = 3669,
     
    404425    editor      = {Richard L. Sites},
    405426    title       = {Alpha Architecture Reference Manual},
    406     publisher   = {Digital Press, One Burlington Woods Drive, Burlington, MA, U. S. A., 01803},
     427    publisher   = {Digital Press, Burlington},
    407428    year        = 1992,
    408429}
     
    413434    editor      = {Mary Shaw},
    414435    title       = {{ALPHARD}: Form and Content},
    415     publisher   = {Springer-Verlag},
     436    publisher   = {Springer},
     437    address     = {New York},
    416438    year        = 1981,
    417439    comment     = {Collection of papers about Alphard.}
     
    470492    editor      = {Gul Agha and Peter Wegner and Akinori Yonezawa},
    471493    publisher   = {MIT Press},
     494    address     = {New York},
    472495    year        = 1993,
    473496    pages       = {107-150},
     
    495518    location    = {Toulouse, France},
    496519    doi         = {http://doi.acm.org/10.1145/318773.319251},
    497     publisher   = {Springer-Verlag},
     520    publisher   = {Springer},
    498521    address     = {London, UK},
    499522}
     
    504527    title       = {The Annotated {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Reference Manual},
    505528    publisher   = {Addison-Wesley},
     529    address     = {Boston},
    506530    year        = 1990,
    507     edition     = {first},
     531    edition     = {1st},
    508532}
    509533
     
    567591    year        = 2008,
    568592    isbn        = {0123705916, 9780123705914},
    569     publisher   = {Morgan Kaufmann Publishers Inc.},
    570     address     = {San Francisco, CA, USA},
     593    publisher   = {Morgan Kaufmann Publishers},
     594    address     = {San Francisco},
    571595}
    572596
     
    747771}
    748772
     773@misc{BoostCoroutines15,
     774    keywords    = {Boost Coroutine Library},
     775    contributer = {pabuhr@plg},
     776    author      = {Oliver Kowalke},
     777    title       = {Boost Coroutine Library},
     778    year        = 2015,
     779    note        = {\href{http://www.boost.org/doc/libs/1_61_0/libs/coroutine/doc/html/index.html}
     780                  {{http://www.boost.org/\-doc/\-libs/1\_61\_0/\-libs/\-coroutine/\-doc/\-html/\-index.html}} [Accessed September 2016]},
     781}
     782
    749783@mastersthesis{Krischer02,
    750784    author      = {Roy Krischer },
     
    779813    editor      = {C. Dony and J. L. Knudsen and A. Romanovsky and A. Tripathi},
    780814    booktitle   = {Advanced Topics in Exception Handling Techniques},
    781     publisher   = {Springer-Verlag},
     815    publisher   = {Springer},
    782816    series      = {Lecture Notes in Computer Science},
    783817    volume      = 4119,
     
    793827    author      = {Brian W. Kernighan and Dennis M. Ritchie},
    794828    title       = {The {C} Programming Language},
    795     publisher   = {Prentice Hall},
     829    publisher   = {Prentice-Hall},
     830    address     = {Englewood Cliffs},
    796831    year        = 1988,
    797     edition     = {second},
    798     series      = {Prentice Hall Software Series},
     832    edition     = {2nd},
     833    series      = {Prentice-Hall Software Series},
    799834    comment     = {
    800835         based on draft-proposed ANSI C
     
    807842    author      = {Brian W. Kernighan and Dennis M. Ritchie},
    808843    title       = {The {C} Programming Language},
    809     publisher   = {Prentice Hall},
     844    publisher   = {Prentice-Hall},
     845    address     = {Englewood Cliffs},
    810846    year        = 1978,
    811     edition     = {first},
     847    edition     = {1st},
    812848}
    813849
     
    835871
    836872@manual{C++Concepts,
    837         keywords = {ISO/IEC TS 19217:2015},
    838         contributer = {a3moss@uwaterloo.ca},
    839         key = {C++ Concepts},
    840         title = {Information technology -- Programming languages -- {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Extensions for concepts},
    841         organization = {International Standard ISO/IEC TS 19217:2015},
    842         publisher = {International Standard Organization},
    843         address = {http://www.iso.org},
    844         year = 2015
     873    keywords    = {ISO/IEC TS 19217:2015},
     874    contributer = {a3moss@uwaterloo.ca},
     875    key         = {C++ Concepts},
     876    title       = {Information technology -- Programming languages -- {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Extensions for concepts},
     877    organization= {International Standard ISO/IEC TS 19217:2015},
     878    publisher   = {International Standard Organization},
     879    address     = {http://www.iso.org},
     880    year        = 2015
    845881}
    846882
     
    914950    title       = {{C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Primer},
    915951    publisher   = {Addison-Wesley},
     952    address     = {Boston},
    916953    year        = 1991,
    917     edition     = {second},
     954    edition     = {2nd},
    918955    note        = {QA76.73.C15L57},
    919956}
     
    925962    title       = {The {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Programming Language},
    926963    publisher   = {Addison-Wesley},
     964    address     = {Boston},
    927965    year        = 1986,
    928     edition     = {first},
     966    edition     = {1st},
    929967    series      = {Addison-Wesley Series in Computer Science}
    930968}
     
    936974    title       = {The {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Programming Language},
    937975    publisher   = {Addison-Wesley},
     976    address     = {Boston},
    938977    year        = 1991,
    939     edition     = {second},
     978    edition     = {2nd},
    940979}
    941980
     
    945984    author      = {Bjarne Stroustrup},
    946985    title       = {The {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Programming Language},
    947     publisher   = {Addison-Wesley},
     986    publisher   = {Addison Wesley Longman},
    948987    year        = 1997,
    949     edition     = {third},
     988    edition     = {3rd},
    950989}
    951990
     
    10021041    title       = {Classics in Software Engineering},
    10031042    publisher   = {Yourdon Press},
     1043    address     = {New York},
    10041044    year        = 1979,
    10051045}
     
    10421082                Moss and J. Craig Schaffert and Robert Scheifler and Alan Snyder},
    10431083    title       = {CLU Reference Manual},
    1044     publisher   = {Springer-Verlag},
     1084    publisher   = {Springer},
     1085    address     = {New York},
    10451086    year        = 1981,
    10461087    volume      = 114,
     
    10531094    key         = {Cobol14},
    10541095    title       = {Programming Languages -- {Cobol}},
    1055     edition     = {second},
     1096    edition     = {2nd},
    10561097    organization= {International Standard ISO/IEC 1989:2014},
    10571098    publisher   = {International Standard Organization},
     
    11061147    title       = {Commentary on Standard {ML}},
    11071148    publisher   = {MIT Press},
    1108     address     = {Cambridge, Massachusetts, U.S.A.},
     1149    address     = {Cambridge},
    11091150    year        = 1991
    11101151}
     
    11321173    year        = 1987,
    11331174    pages       = {151-170},
    1134     publisher   = {Springer-Verlag}
     1175    publisher   = {Springer}
    11351176}
    11361177
     
    11381179    keywords    = {common lisp},
    11391180    contributer = {pabuhr@plg},
    1140     author      = {G. Steele},
     1181    author      = {Guy Steele},
    11411182    title       = {COMMON LISP: The Language},
    11421183    publisher   = {Digital Press},
     1184    address     = {New York},
    11431185    year        = 1984
    11441186}
     
    11831225    year        = 1985,
    11841226    isbn        = {0-13-153271-5},
    1185     publisher   = {Prentice-Hall, Inc.},
     1227    publisher   = {Prentice-Hall},
    11861228    address     = {Upper Saddle River, NJ, USA},
    11871229    note        = {\href{http://www.usingcsp.com/cspbook.pdf}{http://\-www.usingcsp.com/\-cspbook.pdf}},
     
    12021244    author      = {Alfred V. Aho and Monica S. Lam and Ravi Sethi and Jeffrey D. Ullman},
    12031245    title       = {Compilers: Principles, Techniques, and Tools},
    1204     edition     = {second},
     1246    edition     = {2nd},
    12051247    year        = {2006},
    1206     publisher   = {Addison-Wesley Longman Publishing Co., Inc.},
     1248    publisher   = {Addison-Wesley Longman Publishing},
    12071249    address     = {Boston, MA, USA},
    12081250}
     
    12121254    contributer = {pabuhr@plg},
    12131255    author      = {David F. Bacon and Susan L. Graham and Oliver J. Sharp},
    1214     title       = {Compiler Transformations for High-Performance Computing},
     1256    title       = {Compiler Transformations for High-Performance Com\-puting},
    12151257    journal     = acmcs,
    12161258    volume      = 26,
     
    12501292    month       = sep,
    12511293    address     = {Waterloo, Ontario, Canada, N2L 3G1},
    1252     note        = {{\small\textsf{ftp://\-plg.uwaterloo.ca/\-pub/\-theses/\-MokThesis.ps.gz}}},
     1294    note        = {\href{http://plg.uwaterloo.ca/theses/MokThesis.pdf}{http://\-plg.uwaterloo.ca/\-theses/\-MokThesis.pdf}},
    12531295}
    12541296
     
    13281370    editor      = {P. E. Lauer},
    13291371    pages       = {165-198},
    1330     publisher   = {Springer-Verlag},
     1372    publisher   = {Springer},
    13311373    address     = {Berlin, DE},
    13321374    year        = 1993,
     
    13931435    month       = jul,
    13941436    year        = 2015,
    1395     note        = {\href{http://plg.uwaterloo.ca/~usystem/pub/uSystem/u++-6.1.0.sh}{\textsf{http://plg.uwaterloo.ca/\-$\sim$usystem/\-pub/\-uSystem/\-u++-6.1.0.sh}}},
     1437    note        = {\href{http://plg.uwaterloo.ca/~usystem/pub/uSystem/u++-6.1.0.sh}{\textsf{http://\-plg.\-uwaterloo.\-ca/\-$\sim$usystem/\-pub/\-uSystem/\-u++-6.1.0.sh}}},
    13961438}
    13971439
     
    14011443    author      = {Alan Burns and Geoff Davies},
    14021444    title       = {Concurrent Programming},
    1403     publisher   = {Addison-Wesley},
     1445    publisher   = {Addison Wesley Longman},
    14041446    year        = 1993,
    14051447}
     
    14241466    title       = {Concurrent Programming in {J}ava: Design Principles and Patterns},
    14251467    publisher   = {Addison-Wesley},
     1468    address     = {Boston},
    14261469    year        = 1997,
    1427     edition     = {first},
     1470    edition     = {1st},
    14281471}
    14291472
     
    14351478    publisher   = {Oxford University Press},
    14361479    year        = 1998,
    1437     edition     = {first},
     1480    edition     = {1st},
    14381481}
    14391482
     
    14441487    title       = {Concurrent Programming in {J}ava: Design Principles and Patterns},
    14451488    publisher   = {Addison-Wesley},
     1489    address     = {Boston},
    14461490    year        = 2000,
    1447     edition     = {second},
     1491    edition     = {2nd},
    14481492}
    14491493
     
    14531497    author      = {N. H. Gehani and W. D. Roome},
    14541498    title       = {The {Concurrent C} Programming Language},
    1455     publisher   = {Silicon Press, NJ},
     1499    publisher   = {Silicon Press},
     1500    address     = {Summit},
    14561501    year        = 1989,
    14571502}
     
    14621507    author      = {Gregory R. Andrews},
    14631508    title       = {Concurrent Programming: Principles and Practice},
    1464     publisher   = {Benjamin/Cummings Publishing Company, Inc., Redwood City, California},
     1509    publisher   = {Benjamin/Cummings Publish\-ing},
     1510    address     = {Redwood City},
    14651511    year        = 1991,
    14661512}
     
    14711517    author      = {Peter A. Buhr and Ashif S. Harji},
    14721518    title       = {Concurrent Urban Legends},
    1473     journal     = {Concurrency and Computation: Practice and Experience},
     1519    journal     = ccpe,
    14741520    month       = aug,
    14751521    year        = 2005,
     
    14971543    publisher   = {Cambridge University Press},
    14981544    year        = 1998,
    1499     edition     = {second},
     1545    edition     = {2nd},
    15001546}
    15011547
     
    15141560    title       = {Condition Handling in the Lisp Language Family},
    15151561    booktitle   = {Exception Handling},
    1516     publisher   = {Springer-Verlag},
     1562    publisher   = {Springer},
    15171563    volume      = 2022,
    15181564    series      = {LNCS},
     
    15271573    title       = {Conformace, Genericity, Inheritance and Enhancement},
    15281574    pages       = {223-233},
    1529     publisher   = {Springer-Verlag},
     1575    publisher   = {Springer},
    15301576    year        = 1987,
    15311577    volume      = 276,
     
    16361682
    16371683@unpublished{Ditchfield:conversions,
    1638         contributer = {a3moss@uwaterloo.ca},
    1639         author = {Glen Ditchfield},
    1640         title = {Conversions for {Cforall}},
    1641         note = {\href{http://plg.uwaterloo.ca/~cforall/Conversions/index.html}{http://\-plg.uwaterloo.ca/\-\textasciitilde cforall/\-Conversions/\-index.html}},
    1642         month = {Nov},
    1643         year = {2002},
    1644         urldate = {28 July 2016},
    1645 }
    1646 
     1684    contributer = {a3moss@uwaterloo.ca},
     1685    author      = {Glen Ditchfield},
     1686    title       = {Conversions for {Cforall}},
     1687    note        = {\href{http://plg.uwaterloo.ca/~cforall/Conversions/index.html}{http://\-plg.uwaterloo.ca/\-\textasciitilde cforall/\-Conversions/\-index.html}},
     1688    month       = {Nov},
     1689    year        = {2002},
     1690    urldate     = {28 July 2016},
     1691}
    16471692
    16481693@techreport{Dijkstra65,
     
    16621707    author      = {Christopher D. Marlin},
    16631708    title       = {Coroutines: A Programming Methodology, a Language Design and an Implementation},
    1664     publisher   = {Springer-Verlag},
     1709    publisher   = {Springer},
     1710    address     = {New York},
    16651711    year        = 1980,
    16661712    volume      = 95,
     
    16991745    publisher   = {Benjamin Cummings},
    17001746    year        = 1991,
     1747}
     1748
     1749@article{Moore75,
     1750    keywords    = {approximation methods, integrated circuits},
     1751    contributer = {pabuhr@plg},
     1752    author      = {Gordon E. Moore},
     1753    title       = {Progress in Digital Integrated Electronics},
     1754    journal     = {Technical Digest, International Electron Devices Meeting, IEEE},
     1755    year        = 1975,
     1756    pages       = {11-13},
    17011757}
    17021758
     
    18401896    title       = {The Definition of Standard {ML}},
    18411897    publisher   = {MIT Press},
    1842     address     = {Cambridge, Massachusetts, U.S.A.},
     1898    address     = {Cambridge},
    18431899    year        = 1990
    18441900}
     
    18701926    author      = {Peter A. Buhr and David Dice and Wim H. Hesselink},
    18711927    title       = {Dekker's Mutual Exclusion Algorithm Made RW-Safe},
    1872     journal     = {Concurrency and Computation: Practice and Experience},
     1928    journal     = ccpe,
    18731929    volume      = 28,
    18741930    number      = 1,
     
    19201976    title       = {The Design and Evolution of {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
    19211977    publisher   = {Addison-Wesley},
     1978    address     = {Boston},
    19221979    year        = 1994
    19231980}
     
    19772034    author      = {G. Motet and A. Mapinard and J. C. Geoffroy},
    19782035    title       = {Design of Dependable {A}da Software},
    1979     publisher   = {Prentice Hall},
     2036    publisher   = {Prentice-Hall},
     2037    address     = {Englewood Cliffs},
    19802038    year        = 1996,
    19812039}
     
    20122070    title       = {Design Patterns: Elements of Reusable Object-Oriented Software},
    20132071    publisher   = {Addison-Wesley},
     2072    address     = {Boston},
    20142073    year        = 1995,
    20152074    series      = {Professional Computing Series},
     
    20542113    author      = {Ralph E. Johnson and Brian Foote},
    20552114    title       = {Designing Reusable Classes},
    2056     journal     = {Journal of Object-Oriented Programming},
     2115    journal     = joop,
    20572116    year        = 1988,
    20582117    volume      = 1, number = 2, pages = {22-35},
     
    21092168    title       = {A Discipline of Programming},
    21102169    publisher   = {Prentice-Hall},
     2170    address     = {Englewood Cliffs},
    21112171    year        = 1976,
    21122172}
     
    21252185    title       = {Distributed Systems: Principles and Paradigms},
    21262186    publisher   = {Prentice-Hall},
     2187    address     = {Englewood Cliffs},
    21272188    year        = 2002,
    21282189}
     
    22532314    title       = {Eiffel: The Language},
    22542315    publisher   = {Prentice-Hall},
     2316    address     = {Englewood Cliffs},
    22552317    year        = 1992,
    2256     series      = {Prentice Hall Object-Oriented Series},
     2318    series      = {Prentice-Hall Object-Oriented Series},
    22572319}
    22582320
     
    23882450    month       = jun,
    23892451    year        = 2015,
    2390     note        = {\href{http://www.erlang.org/doc/pdf/otp-system-documentation.pdf}{\textsf{http://www.erlang.org/\-doc/\-pdf/\-otp-system-documentation.pdf}}},
     2452    note        = {\href{http://www.erlang.org/doc/pdf/otp-system-documentation.pdf}{\textsf{http://www.erlang.org/\-doc/\-pdf/\-otp-system-\-documentation.pdf}}},
    23912453}
    23922454
     
    24672529    booktitle   = {Advances in COMPUTERS},
    24682530    publisher   = {Academic Press},
     2531    address     = {London},
    24692532    volume      = 56,
    24702533    year        = 2002,
     
    25612624    title       = {Exception Handling in Parallel Computations},
    25622625    journal     = sigplan,
     2626    publisher   = {ACM},
     2627    address     = {New York, NY, USA},
    25632628    volume      = 20,
    25642629    number      = 10,
    25652630    month       = oct,
    25662631    year        = 1985,
    2567     issn        = {0362-1340},
    25682632    pages       = {95-104},
    2569     url         = {http://doi.acm.org/10.1145/382286.382385},
    2570     doi         = {http://doi.acm.org/10.1145/382286.382385},
    2571     acmid       = {382385},
    2572     publisher   = {ACM},
    2573     address     = {New York, NY, USA},
    25742633}
    25752634
     
    26802739    title       = {Fault Tolerance and Exception Handling in {BETA}},
    26812740    booktitle   = {Exception Handling},
    2682     publisher   = {Springer-Verlag},
     2741    publisher   = {Springer},
    26832742    volume      = 2022,
    26842743    series      = {Lecture Notes in Computer Science},
     
    28392898    title       = {A Fully Object-Oriented Exception Handling System: Rationale and Smalltalk Implementation},
    28402899    booktitle   = {Exception Handling},
    2841     publisher   = {Springer-Verlag},
     2900    publisher   = {Springer},
    28422901    volume      = 2022,
    28432902    series      = {Lecture Notes in Computer Science},
     
    28592918    series      = {The Art of Computer Programming},
    28602919    publisher   = {Addison-Wesley},
     2920    address     = {Boston},
    28612921    year        = 1973,
    28622922    volume      = 1,
    2863     edition     = {second},
     2923    edition     = {2nd},
    28642924}
    28652925
     
    29122972    author      = {Richard M. Stallman},
    29132973    organization= {Free Software Foundation},
    2914     address     = {Cambridge, MA}
     2974    address     = {Cambridge}
    29152975}
    29162976
     
    29523012}
    29533013
    2954 
    29553014@article{Haskell,
    29563015    keywords    = {lazy evaluation, type class},
     
    29733032    organization= {Google},
    29743033    year        = 2009,
    2975     note        = {\href{http://golang.org/ref/spec}{http://golang.org/\-ref/\-spec}},
     3034    note        = {\href{http://golang.org/ref/spec}{http://\-golang.org/\-ref/\-spec}},
    29763035}
    29773036
     
    30903149    author      = {Robert E. Strom and David F. Bacon and Arthur P. Goldberg and Andy Lowry and Daniel M. Yellin and Shaula Alexander Yemini},
    30913150    title       = {Hermes: A Language for Distributed Computing},
    3092     publisher   = {Prentice Hall},
     3151    publisher   = {Prentice-Hall},
     3152    address     = {Englewood Cliffs},
    30933153    series      = {Innovative Technology},
    30943154    year        = 1991,
     
    31343194    author      = {Peter A. Buhr and David Dice and Wim H. Hesselink},
    31353195    title       = {High-Performance {$N$}-Thread Software Solutions for Mutual Exclusion},
    3136     journal     = {Concurrency and Computation: Practice and Experience},
     3196    journal     = ccpe,
    31373197    volume      = 27,
    31383198    number      = 3,
     
    31483208    title       = {Zum Hilbertschen Aufbau der reellen Zahlen},
    31493209    publisher   = {Springer},
    3150     journal     = {Mathematische Annalen},
     3210    journal     = mathann,
    31513211    number      = 1,
    31523212    volume      = 99,
     
    31873247    title       = {The Icon Programming Language},
    31883248    publisher   = {Prentice-Hall},
     3249    address     = {Englewood Cliffs},
    31893250    year        = 1983,
    31903251}
     
    32623323    issn        = {0164-0925},
    32633324    pages       = {1270--1343},
    3264     doi         = {http://doi.acm.org/10.1145/1108970.1108975},
    32653325    publisher   = {ACM Press},
    32663326    address     = {New York, NY, USA},
     
    32773337    pages       = {55-59},
    32783338    issn        = {0163-5719},
    3279     doi         = {http://doi.acm.org/10.1145/872736.806932},
    3280  }
     3339}
    32813340
    32823341@book{Algol68,
     
    33613420    title       = {Interacting Processes: A Multiparty Approach to Coordinated Distributed Programming},
    33623421    publisher   = {Addison-Wesley},
     3422    address     = {Boston},
    33633423    series      = {ACM Press Books},
    33643424    year        = 1996,
     
    34343494    title       = {Introduction to Algorithms},
    34353495    publisher   = {MIT Press/McGraw-Hill},
     3496    address     = {Cambridge},
    34363497    series      = {Electrical Engineering and Computer Science Series},
    34373498    year        = 1992,
     
    34443505    title       = {Introduction to Automata Theory, Languages and Computation},
    34453506    publisher   = {Addison-Wesley},
     3507    address     = {Boston},
    34463508    year        = 1979,
    34473509}
     
    34763538    title       = {An Introduction to Operating Systems},
    34773539    publisher   = {Addison-Wesley},
     3540    address     = {Boston},
    34783541    year        = 1990,
    3479     edition     = {second},
     3542    edition     = {2nd},
    34803543}
    34813544
     
    35253588    title       = {Issues with Exception Hnadling in Object-Oriented Systems},
    35263589    booktitle   = {ECOOP'97},
    3527     publisher   = {Springer-Verlag},
     3590    publisher   = {Springer},
    35283591    volume      = 1241,
    35293592    series      = {Lecture Notes in Computer Science},
     
    35533616    title       = {The {Java} Language Specification},
    35543617    publisher   = {Addison-Wesley},
     3618    address     = {Reading},
    35553619    year        = 2000,
    3556     edition     = {second},
     3620    edition     = {2nd},
    35573621}
    35583622
     
    35973661    title       = {Konstruktion nichtrekursiver Funktionen},
    35983662    publisher   = {Springer},
    3599     journal     = {Mathematische Annalen},
     3663    journal     = mathann,
    36003664    number      = 111,
    36013665    volume      = 1,
     
    37403804    title       = {Lisp 1.5 Primer},
    37413805    publisher   = {Dickenson Publishing},
     3806    address     = {Belmont},
    37423807    year        = 1967,
    37433808}
     
    39374002    booktitle   = {Proceedings of the European Conference on Object Oriented Programming},
    39384003    organization= {ECOOP'88},
    3939     publisher   = {Springer-Verlag},
     4004    publisher   = {Springer},
    39404005    volume      = 322,
    39414006    editor      = {S. Gjessing and K. Nygaard},
     
    39794044    title       = {Modern C++ Design: Generic Programming and Design Patterns Applied},
    39804045    publisher   = {Addison-Wesley Professional},
     4046    address     = {Boston},
    39814047    month       = feb,
    39824048    year        = 2001,
     
    39904056    title       = {Modern Operating Systems},
    39914057    publisher   = {Prentice-Hall},
     4058    address     = {Englewood Cliffs},
    39924059    year        = 1992,
    39934060}
     
    43104377    title       = {Nesting in an Object Oriented Language is NOT for the Birds},
    43114378    booktitle   = {Proceedings of the European Conference on Object Oriented Programming},
    4312     publisher   = {Springer-Verlag},
     4379    publisher   = {Springer},
    43134380    volume      = 322,
    43144381    editor      = {S. Gjessing and K. Nygaard},
     
    44374504    editor      = {S. Gjessing and K. Nygaard},
    44384505    organization= {DND, The Norwegian Computer Society},
    4439     publisher   = {Springer-Verlag},
     4506    publisher   = {Springer},
    44404507    comment     = {
    44414508           Objectives:
     
    44724539    title       = {Object-oriented programming; an evolutionary approach},
    44734540    publisher   = {Addison-Wesley},
     4541    address     = {Boston},
    44744542    year        = 1986
    44754543}
     
    44814549    title       = {Object-oriented Programming in the {BETA} Programming Language},
    44824550    publisher   = {Addison-Wesley},
     4551    address     = {Boston},
    44834552    year        = 1993,
    44844553}
     
    45124581    author      = {Bertrand Meyer},
    45134582    title       = {Object-oriented Software Construction},
    4514     publisher   = {Prentice Hall},
     4583    publisher   = {Prentice-Hall},
     4584    address     = {Englewood Cliffs},
    45154585    year        = {1988},
    4516     series      = {Prentice Hall International Series in Computer Science},
     4586    series      = {Prentice-Hall International Series in Computer Science},
    45174587}
    45184588
     
    45414611    author      = {John Galletly},
    45424612    title       = {{OCCAM} 2: Including {OCCAM} 2.1},
    4543     publisher   = {{UCL} (University College London) Press Ltd.},
    4544     edition     = {second},
     4613    publisher   = {{UCL} (University College London) Press},
     4614    address     = {London},
     4615    edition     = {2nd},
    45454616    year        = 1996,
    45464617}
     
    46024673    month       = jul,
    46034674    year        = 2013,
    4604     note        = {\href{http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf}{\textsf{http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf}}},
     4675    note        = {\href{http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf}{\textsf{http://\-www.openmp.org/\-mp-documents/\-OpenMP4.0.0.pdf}}},
    46054676}
    46064677
     
    46114682    title       = {Operating Systems},
    46124683    publisher   = {Pearson Prentice-Hall},
     4684    address     = {Englewood Cliffs},
    46134685    year        = 2004,
    4614     edition     = {third},
     4686    edition     = {3rd},
    46154687}
    46164688
     
    46214693    title       = {Operating Systems: Internals and Design Principles},
    46224694    publisher   = {Prentice-Hall},
     4695    address     = {Englewood Cliffs},
    46234696    year        = 1998,
    4624     edition     = {third},
     4697    edition     = {3rd},
    46254698}
    46264699
     
    46314704    title       = {Operating Systems: Internals and Design Principles},
    46324705    publisher   = {Prentice-Hall},
     4706    address     = {Englewood Cliffs},
    46334707    year        = 2001,
    4634     edition     = {fourth},
     4708    edition     = {4th},
    46354709}
    46364710
     
    46414715    title       = {Operating System Concepts},
    46424716    publisher   = {Addision-Wesley},
     4717    address     = {Boston},
    46434718    year        = 1991,
    4644     edition     = {third},
     4719    edition     = {3rd},
    46454720}
    46464721
     
    46514726    title       = {Operating Systems : Design and Implementation},
    46524727    publisher   = {Prentice-Hall},
     4728    address     = {Englewood Cliffs},
    46534729    series      = {Software Series},
    46544730    year        = 1987,
     
    46614737    title       = {Operating System Principles},
    46624738    publisher   = {Prentice-Hall},
     4739    address     = {Englewood Cliffs},
    46634740    year        = 1973,
    46644741}
     
    46704747    title       = {Operating System Principles},
    46714748    publisher   = {Prentice-Hall},
     4749    address     = {Englewood Cliffs},
    46724750    year        = 2003,
    46734751}
     
    46864764
    46874765@article{Ganzinger80,
    4688         contributer = {a3moss@uwaterloo.ca},
    4689         author = {Ganzinger, Harald and Ripken, Knut},
    4690         title = {Operator Identification in {ADA}: Formal Specification, Complexity, and Concrete Implementation},
    4691         journal = {SIGPLAN Notices},
    4692         issue_date = {February 1980},
    4693         volume = {15},
    4694         number = {2},
    4695         month = feb,
    4696         year = {1980},
    4697         issn = {0362-1340},
    4698         pages = {30--42},
    4699         numpages = {13},
    4700         url = {http://doi.acm.org/10.1145/947586.947589},
    4701         doi = {10.1145/947586.947589},
    4702         publisher = {ACM},
    4703         address = {New York, NY, USA}
     4766    contributer = {a3moss@uwaterloo.ca},
     4767    author      = {Ganzinger, Harald and Ripken, Knut},
     4768    title       = {Operator Identification in {ADA}: Formal Specification, Complexity, and Concrete Implementation},
     4769    journal     = {SIGPLAN Notices},
     4770    issue_date  = {February 1980},
     4771    volume      = {15},
     4772    number      = {2},
     4773    month       = feb,
     4774    year        = {1980},
     4775    issn        = {0362-1340},
     4776    pages       = {30--42},
     4777    numpages    = {13},
     4778    url         = {http://doi.acm.org/10.1145/947586.947589},
     4779    doi         = {10.1145/947586.947589},
     4780    publisher   = {ACM},
     4781    address     = {New York, NY, USA}
    47044782}
    47054783
     
    47234801    title       = {{OS} and {DOS} {PL/I} Reference Manual},
    47244802    organization= {International Business Machines},
    4725     edition     = {first},
     4803    edition     = {1st},
    47264804    month       = sep,
    47274805    year        = 1981,
     
    48434921    booktitle   = {Parallel Programming in {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
    48444922    publisher   = {MIT Press},
    4845     address     = {Cambridge, MA, USA},
     4923    address     = {Cambridge},
    48464924    series      = {Scientific and Engineering Computation Series},
    48474925    pages       = {507-546},
     
    49225000    publisher   = {Springer--Verlag},
    49235001    year        = 1985,
    4924     edition     = {third},
     5002    edition     = {3rd},
    49255003    note        = {Revised by Andrew B. Mickel and James F. Miner, ISO Pascal Standard}
    49265004}
     
    49335011    publisher   = {Springer--Verlag},
    49345012    year        = 1975,
    4935     edition     = {first},
     5013    edition     = {1st},
    49365014}
    49375015
     
    49555033    title       = {{P}ascal/{VS} Language Reference Manual},
    49565034    organization= {International Business Machines},
    4957     edition     = {first},
     5035    edition     = {1st},
    49585036    year        = 1981,
    49595037    note        = {Manual SH20-6168-1},
     
    51075185    title       = {Principles of Concurrent Programming},
    51085186    publisher   = {Prentice-Hall International},
     5187    address     = {Englewood Cliffs},
    51095188    year        = 1982,
    51105189}
     
    51145193    title       = {Principles of Programming Languages},
    51155194    publisher   = {Prentice-Hall International},
     5195    address     = {Englewood Cliffs},
    51165196    year        = 1981,
    51175197    series      = {Series in Computer Science}
     
    51855265    title       = {Programming with {POSIX} Threads},
    51865266    publisher   = {Addison-Wesley},
     5267    address     = {Boston},
    51875268    series      = {Professional Computing},
    51885269    year        = 1997,
     
    51945275    author      = {J. T. Schwartz and R. B. K. Dewar and E. Dubinsky and E. Schonberg},
    51955276    title       = {Programming with Sets: An Introduction to {SETL}},
    5196     publisher   = {Springer-Verlag},
     5277    publisher   = {Springer},
    51975278    year        = 1986,
    51985279}
     
    52355316    key         = {C++14},
    52365317    title       = {Programming Languages -- {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
    5237     edition     = {fourth},
     5318    edition     = {4th},
    52385319    organization= {International Standard ISO/IEC 14882:2014 (E)},
    52395320    publisher   = {International Standard Organization},
     
    53295410    author      = {Niklaus Wirth},
    53305411    title       = {Programming in Modula-2},
    5331     publisher   = {Springer-Verlag},
     5412    publisher   = {Springer},
     5413    address     = {New York},
    53325414    year        = 1988,
    5333     edition     = {fourth},
     5415    edition     = {4th},
    53345416    series      = {Texts and Monographs in Computer Science},
    53355417}
     
    53435425    month       = feb,
    53445426    year        = 1983,
    5345     note        = {Published by Springer-Verlag}
     5427    note        = {Springer, New York},
    53465428}
    53475429
     
    53515433    title       = {The Programming Language {Ada}: Reference Manual},
    53525434    organization= {United States Department of Defense},
    5353     publisher   = {Springer-Verlag},
     5435    publisher   = {Springer},
    53545436    year        = 1981
    53555437}
     
    55055587
    55065588@article{Grossman06,
    5507  keywords = {Cyclone, existential types, polymorphism, type variables},
    5508  contributer = {a3moss@plg},
    5509  author = {Grossman, Dan},
    5510  title = {Quantified Types in an Imperative Language},
    5511  journal = toplas,
    5512  issue_date = {May 2006},
    5513  volume = {28},
    5514  number = {3},
    5515  month = may,
    5516  year = {2006},
    5517  issn = {0164-0925},
    5518  pages = {429--475},
    5519  numpages = {47},
    5520  url = {http://doi.acm.org.proxy.lib.uwaterloo.ca/10.1145/1133651.1133653},
    5521  doi = {10.1145/1133651.1133653},
    5522  acmid = {1133653},
    5523  publisher = {ACM},
    5524  address = {New York, NY, USA},
     5589    keywords    = {Cyclone, existential types, polymorphism, type variables},
     5590    contributer = {a3moss@plg},
     5591    author      = {Grossman, Dan},
     5592    title       = {Quantified Types in an Imperative Language},
     5593    journal     = toplas,
     5594    issue_date  = {May 2006},
     5595    volume      = {28},
     5596    number      = {3},
     5597    month       = may,
     5598    year        = {2006},
     5599    issn        = {0164-0925},
     5600    pages       = {429--475},
     5601    numpages    = {47},
     5602    url         = {http://doi.acm.org.proxy.lib.uwaterloo.ca/10.1145/1133651.1133653},
     5603    doi         = {10.1145/1133651.1133653},
     5604    acmid       = {1133653},
     5605    publisher   = {ACM},
     5606    address     = {New York, NY, USA},
    55255607}
    55265608
     
    55695651    title       = {{A}da Reference Manual},
    55705652    edition     = {International Standard {ISO}/{IEC} {8652:1995(E)} with {COR.1:2000}},
    5571     organization = {Intermetrics, Inc.},
     5653    organization= {Intermetrics, Inc.},
    55725654    month       = dec,
    55735655    year        = 1995,
     
    55795661    contributer = {pabuhr@plg},
    55805662    title       = {Programming languages -- {Ada}},
    5581     edition     = {third},
     5663    edition     = {3rd},
    55825664    organization= {International Standard ISO/IEC 1989:2014},
    55835665    publisher   = {International Standard Organization},
     
    56045686    series      = {The Real-Time for Java Expert Group, {\small\textsf{http://\-www.rtj.org}}},
    56055687    publisher   = {Addison-Wesley},
     5688    address     = {Boston},
    56065689    year        = 2000,
    56075690}
     
    57555838% S
    57565839
     5840@manual{Scala,
     5841    keywords    = {Scala programming language},
     5842    contributer = {pabuhr@plg},
     5843    title       = {{Scala} Language Specification, Version 2.11},
     5844    organization= {\'{E}cole Polytechnique F\'{e}d\'{e}rale de Lausanne},
     5845    year        = 2016,
     5846    note        = {\href{http://www.scala-lang.org/files/archive/spec/2.11}{http://\-www.scala-lang.org/\-files/\-archive/\-spec/\-2.11}},
     5847}
     5848
    57575849@inproceedings{Michael04,
    57585850    keywords    = {lock free, dynamic memory allocation},
     
    58025894    pages       = {51-67},
    58035895    editor      = {G. Kahn and D. B. MacQueen and G. D. Plotkin},
    5804     publisher   = {Springer-Verlag},
     5896    publisher   = {Springer},
    58055897    note        = {Lecture Notes in Computer Science v. 173},
    58065898}
     
    58525944    month       = may,
    58535945    year        = 2001,
    5854     note        = {{\small\textsf{http://www.python.org/peps/pep-0255.html}}},
     5946    note        = {\href{http://www.python.org/peps/pep-0255.html}{http://\-www.python.org/\-peps/\-pep-0255.html}},
    58555947}
    58565948
     
    58715963
    58725964@article{Pennello80,
    5873         contributer = {a3moss@uwaterloo.ca},
    5874         author = {Pennello, Tom and DeRemer, Frank and Meyers, Richard},
    5875         title = {A Simplified Operator Identification Scheme for {Ada}},
    5876         journal = {SIGPLAN Notices},
    5877         issue_date = {July-August 1980},
    5878         volume = {15},
    5879         number = {7 and 8},
    5880         month = jul,
    5881         year = {1980},
    5882         issn = {0362-1340},
    5883         pages = {82--87},
    5884         numpages = {6},
    5885         url = {http://doi.acm.org/10.1145/947680.947688},
    5886         doi = {10.1145/947680.947688},
    5887         publisher = {ACM},
    5888         address = {New York, NY, USA},
     5965    contributer = {a3moss@uwaterloo.ca},
     5966    author      = {Pennello, Tom and DeRemer, Frank and Meyers, Richard},
     5967    title       = {A Simplified Operator Identification Scheme for {Ada}},
     5968    journal     = {SIGPLAN Notices},
     5969    issue_date  = {July-August 1980},
     5970    volume      = {15},
     5971    number      = {7 and 8},
     5972    month       = jul,
     5973    year        = {1980},
     5974    issn        = {0362-1340},
     5975    pages       = {82--87},
     5976    numpages    = {6},
     5977    url         = {http://doi.acm.org/10.1145/947680.947688},
     5978    doi         = {10.1145/947680.947688},
     5979    publisher   = {ACM},
     5980    address     = {New York, NY, USA},
    58895981}
    58905982
     
    59276019    year        = {1980},
    59286020    address     = {Lund, Sweden},
    5929     edition     = {second},
     6021    edition     = {2nd},
    59306022}
    59316023
    59326024@book{Simula67,
    5933     author      = "O-J Dahl and B. Myhrhaug and K. Nygaard",
    5934     address     = "Oslo Norway",
     6025    author      = {O-J Dahl and B. Myhrhaug and K. Nygaard},
     6026    title       = {Simula67 Common Base Language},
    59356027    month       = oct,
    59366028    year        = 1970,
    5937     publisher   = "Norwegian Computing Center",
    5938     title       = "Simula67 Common Base Language"
     6029    publisher   = {Norwegian Com\-puting Center},
     6030    address     = {Oslo Norway},
    59396031}
    59406032
     
    59456037    title       = {Smalltalk-80: The Language and its Implementation},
    59466038    publisher   = {Addison-Wesley},
     6039    address     = {Reading},
    59476040    year        = 1983
    59486041}
     
    59666059    author      = {R. E. Griswold and J. F. Poage and I. P. Polonsky},
    59676060    title       = {The SNOBOL4 Programming Language},
    5968     edition     = {second},
     6061    edition     = {2nd},
    59696062    publisher   = {Prentice-Hall},
     6063    address     = {Englewood Cliffs},
    59706064    year        = 1971,
    59716065}
     
    60736167    author      = {R. H. Campbell and A. N. Habermann},
    60746168    title       = {The Specification of Process Synchronization by Path Expressions},
    6075     publisher   = {Springer-Verlag},
     6169    publisher   = {Springer},
    60766170    year        = 1974,
    60776171    volume      = 16,
     
    61176211    title       = {A Standard {ML} Compiler},
    61186212    booktitle   = {Functional Programming Languages and Computer Architecture},
    6119     publisher   = {Springer-Verlag},
     6213    publisher   = {Springer},
    61206214    series      = {Lecture Notes in Computer Science},
    61216215    volume      = 274,
     
    61726266    title       = {Structured Concurrent Programming with Operating System Applications},
    61736267    publisher   = {Addison-Wesley},
     6268    address     = {Boston},
    61746269    year        = 1978,
    61756270}
     
    63206415    author      = {Gadi Taubenfeld},
    63216416    title       = {Synchronization Algorithms and Concurrent Programming},
    6322     publisher   = {Pearson/Prentice Hall},
     6417    publisher   = {Pearson/Prentice-Hall},
     6418    address     = {Harlow, England},
    63236419    year        = 2006,
    63246420}
     
    63806476    author      = {Andrew Birrell and Mark R. Brown and Luca Cardelli and Jim Donahue and Lucille Glassman and John Gutag and Jim Harning and Bill Kalsow and Roy Levin and Greg Nelson},
    63816477    title       = {Systems Programming with Modula-3},
    6382     publisher   = {Prentice-Hall, Inc.},
     6478    publisher   = {Prentice-Hall},
     6479    address     = {Englewood Cliffs},
    63836480    year        = 1991,
    6384     series      = {Prentice Hall Series in Innovative Technology}
     6481    series      = {Prentice-Hall Series in Innovative Technology}
    63856482}
    63866483
     
    64646561    pages       = {408-423},
    64656562    editor      = {B. Robinet},
    6466     publisher   = {Springer-Verlag},
     6563    publisher   = {Springer},
    64676564    note        = {Lecture Notes in Computer Science, v. 19},
    64686565    abstract    = {
     
    65466643    publisher   = {Holt Software Associates Inc.},
    65476644    year        = 1992,
    6548     edition     = {third},
     6645    edition     = {3rd},
    65496646}
    65506647
     
    65666663    title       = {Tutorial: Programming Language Design},
    65676664    publisher   = {Computer Society Press},
     6665    address     = {Los Alamitos},
    65686666    year        = 1980
    65696667}
     
    66356733% U
    66366734
    6637 @unpublished{uC++book,
    6638     keywords    = {control structure, concurrency},
     6735@book{uC++book,
     6736    keywords    = {control structure, concurrency, uC++},
    66396737    contributer = {pabuhr@plg},
    66406738    author      = {Peter A. Buhr},
    6641     title       = {Understanding Control Flow with Concurrent Programming using $\mu${C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
    6642     year        = 1999,
    6643     note        = {Textbook in preparation}
     6739    title       = {Understanding Control Flow: Concurrent Programming using $\mu${C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
     6740    publisher   = {Springer},
     6741    address     = {Switzerland},
     6742    year        = 2016,
    66446743}
    66456744
     
    66646763    booktitle   = {Proceedings of the International Workshop on Memory Management},
    66656764    location    = {St. Malo, France},
    6666     publisher   = {Springer-Verlag},
     6765    publisher   = {Springer},
    66676766    series      = {Lecture Notes in Computer Science},
    66686767    volume      = 637,
     
    67886887    title       = {VAX-11 Architecture Reference Manual},
    67896888    publisher   = {Digital Press},
     6889    address     = {Bedford},
    67906890    month       = may,
    67916891    year        = 1982,
     
    67966896    title       = {{VAX/VMS} Internals and Data Structures Version 4.4},
    67976897    publisher   = {Digital Press},
     6898    address     = {Bedford},
    67986899    year        = 1988,
    67996900}
     
    68056906    title       = {Verifying a Simplification of Mutual Exclusion by {L}ycklama--{H}adzilacos},
    68066907    journal     = {Acta Informatica},
    6807     publisher   = {Springer-Verlag},
     6908    publisher   = {Springer},
     6909    address     = {New York},
    68086910    year        = {2013},
    68096911    volume      = {50},
     
    68716973    month       = jun,
    68726974    year        = 1985,
    6873     note        = {\textsf{http://www.hpl.hp.com/\-techreports/\-tandem/\-TR-85.7.pdf}},
     6975    note        = {\href{http://www.hpl.hp.com/techreports/tandem/TR-85.7.pdf}{http://www.hpl.hp.com/\-techreports/\-tandem/\-TR-85.7.pdf}},
    68746976}
    68756977
  • doc/user/user.tex

    r40744af8 rf51aefb  
    1111%% Created On       : Wed Apr  6 14:53:29 2016
    1212%% Last Modified By : Peter A. Buhr
    13 %% Last Modified On : Sun Aug 14 08:23:06 2016
    14 %% Update Count     : 1323
     13%% Last Modified On : Tue Oct 25 23:03:59 2016
     14%% Update Count     : 1357
    1515%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1616
     
    3333\usepackage{textcomp}
    3434\usepackage[latin1]{inputenc}
     35
    3536\usepackage{fullpage,times,comment}
    3637\usepackage{epic,eepic}
     
    325326\begin{description}
    326327\item
    327 \Indexc{__CFA__}\index{preprocessor variables!__CFA__@{©__CFA__©}}
    328 is always available during preprocessing and its value is the current major \Index{version number} of \CFA.\footnote{
     328\Indexc{__CFA_MAJOR__}\index{preprocessor variables!__CFA__@{©__CFA__©}}
     329is available during preprocessing and its value is the major \Index{version number} of \CFA.\footnote{
    329330The C preprocessor allows only integer values in a preprocessor variable so a value like ``\Version'' is not allowed.
    330331Hence, the need to have three variables for the major, minor and patch version number.}
     
    332333\item
    333334\Indexc{__CFA_MINOR__}\index{preprocessor variables!__CFA_MINOR__@{©__CFA_MINOR__©}}
    334 is always available during preprocessing and its value is the current minor \Index{version number} of \CFA.
     335is available during preprocessing and its value is the minor \Index{version number} of \CFA.
    335336
    336337\item
    337338\Indexc{__CFA_PATCH__}\index{preprocessor variables!__CFA_PATCH__@©__CFA_PATCH__©}
    338 is always available during preprocessing and its value is the current patch \Index{version number} of \CFA.
    339 
    340 \item
     339is available during preprocessing and its value is the patch \Index{level number} of \CFA.
     340
     341\item
     342\Indexc{__CFA__}\index{preprocessor variables!__CFA__@©__CFA__©} and
    341343\Indexc{__CFORALL__}\index{preprocessor variables!__CFORALL__@©__CFORALL__©}
    342 is always available during preprocessing and has no value.
     344are always available during preprocessing and have no value.
    343345\end{description}
    344346These preprocessor variables allow conditional compilation of programs that must work differently in these situations.
     
    18531855case 1:  case 2:  case 3: ...
    18541856\end{lstlisting}
    1855 still work.
     1857still works.
    18561858Nevertheless, reversing the default action would have a non-trivial effect on case actions that compound, such as the above example of processing shell arguments.
    1857 <<<<<<< HEAD
    1858 Therefore, to preserve backwards compatibility, it is necessary to introduce a new kind of ©switch© statement, called ©choose©, with no implicit fall-through semantics and an explicit fall-through if the last statement of a case-clause ends with the new keyword ©fallthru©, \eg:
    1859 =======
    18601859Therefore, to preserve backwards compatibility, it is necessary to introduce a new kind of ©switch© statement, called ©choose©, with no implicit fall-through semantics and an explicit fall-through if the last statement of a case-clause ends with the new keyword ©fallthrough©/©fallthru©, e.g.:
    1861 >>>>>>> 080615890f586cb9954c252b55cab47f52c25758
    18621860\begin{lstlisting}
    18631861®choose® ( i ) {
Note: See TracChangeset for help on using the changeset viewer.