Index: doc/bibliography/cfa.bib
===================================================================
--- doc/bibliography/cfa.bib	(revision 71b5d4d3e2dc8bfce04f123e7ce140eda12045e6)
+++ doc/bibliography/cfa.bib	(revision 0f35657ae520d3e4d0fd40c5151fc45879ad5bee)
@@ -21,11 +21,20 @@
 %  tcs: Theoretical Computer Science
 @string{ieeepds="IEEE Transactions on Parallel and Distributed Systems"}
+% @string{ieeepds="IEEE Trans. Parallel Distrib. Syst."}
 @string{ieeese="IEEE Transactions on Software Engineering"}
+% @string{ieeese="IEEE Trans. Softw. Eng."}
 @string{spe="Software---\-Practice and Experience"}
+% @string{spe="Softw. Pract. Exp."}
+@string{ccpe="Concurrency and Computation: Practice and Experience"}
+% @string{ccpe="Concurrency Comput. Pract. Exp."}
 @string{sigplan="SIGPLAN Notices"}
+% @string{sigplan="SIGPLAN Not."}
 @string{joop="Journal of Object-Oriented Programming"}
+% @string{joop="J. of Object-Oriented Program."}
 @string{popl="Conference Record of the ACM Symposium on Principles of Programming Languages"}
 @string{osr="Operating Systems Review"}
 @string{pldi="Programming Language Design and Implementation"}
+@string{mathann="Mathematische Annalen"}
+% @string{mathann="Math. Ann."}
 
 % A
@@ -39,4 +48,5 @@
     booktitle	= {Parallel Programming in {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
     publisher	= {MIT Press},
+    address	= {New York},
     series	= {Scientific and Engineering Computation Series},
     year	= 1996,
@@ -120,6 +130,6 @@
     year	= 1996,
     pages	= {483-499},
-    publisher	= {Addison-Wesley Longman Publishing Co., Inc.},
-    address	= {Boston, MA, USA},
+    publisher	= {Addison-Wesley Longman Publishing},
+    address	= {Boston},
 }
 
@@ -161,5 +171,5 @@
     author	= {Gul A. Agha},
     title	= {Actors: A Model of Concurrent Computation in Distributed Systems},
-    publisher	= {MIT Press, Cambridge, Mass.},
+    publisher	= {MIT Press, Cambridge},
     year	= 1986
 }
@@ -311,5 +321,5 @@
     publisher	= {Microsoft Press},
     year	= 1997,
-    edition	= {third},
+    edition	= {3rd},
 }
 
@@ -325,4 +335,14 @@
     year	= 1977,
     pages	= {604-605},
+}
+
+@manual{Akka,
+    keywords	= {Akka actor model},
+    contributer	= {pabuhr@plg},
+    title	= {{A}kka {S}cala Documentation, Release 2.4.11},
+    organization= {Lightbend Inc.},
+    month	= sep,
+    year	= 2016,
+    note	= {\href{http://doc.akka.io/docs/akka/2.4/AkkaScala.pdf}{http://\-doc.akka.io/\-docs/\-akka/\-2.4/\-AkkaScala.pdf}},
 }
 
@@ -378,6 +398,6 @@
     author	= {M. Raynal},
     title	= {Algorithms for Mutual Exclusion},
-    publisher	= {The MIT Press},
-    address	= {Cambridge, Massachusetts},
+    publisher	= {MIT Press},
+    address	= {Cambridge},
     series	= {Scientific Computation Series},
     year	= 1986,
@@ -394,4 +414,5 @@
     pages	= {329-342},
     publisher	= {Springer},
+    address	= {New York},
     year	= 2005,
     volume	= 3669,
@@ -404,5 +425,5 @@
     editor	= {Richard L. Sites},
     title	= {Alpha Architecture Reference Manual},
-    publisher	= {Digital Press, One Burlington Woods Drive, Burlington, MA, U. S. A., 01803},
+    publisher	= {Digital Press, Burlington},
     year	= 1992,
 }
@@ -413,5 +434,6 @@
     editor	= {Mary Shaw},
     title	= {{ALPHARD}: Form and Content},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
+    address	= {New York},
     year	= 1981,
     comment	= {Collection of papers about Alphard.}
@@ -470,4 +492,5 @@
     editor	= {Gul Agha and Peter Wegner and Akinori Yonezawa},
     publisher	= {MIT Press},
+    address	= {New York},
     year	= 1993,
     pages	= {107-150},
@@ -495,5 +518,5 @@
     location	= {Toulouse, France},
     doi		= {http://doi.acm.org/10.1145/318773.319251},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     address	= {London, UK},
 }
@@ -504,6 +527,7 @@
     title	= {The Annotated {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Reference Manual},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1990,
-    edition	= {first},
+    edition	= {1st},
 }
 
@@ -567,6 +591,6 @@
     year	= 2008,
     isbn	= {0123705916, 9780123705914},
-    publisher	= {Morgan Kaufmann Publishers Inc.},
-    address	= {San Francisco, CA, USA},
+    publisher	= {Morgan Kaufmann Publishers},
+    address	= {San Francisco},
 }
 
@@ -747,4 +771,14 @@
 }
 
+@misc{BoostCoroutines15,
+    keywords	= {Boost Coroutine Library},
+    contributer	= {pabuhr@plg},
+    author	= {Oliver Kowalke},
+    title	= {Boost Coroutine Library},
+    year	= 2015,
+    note	= {\href{http://www.boost.org/doc/libs/1_61_0/libs/coroutine/doc/html/index.html}
+		  {{http://www.boost.org/\-doc/\-libs/1\_61\_0/\-libs/\-coroutine/\-doc/\-html/\-index.html}} [Accessed September 2016]},
+}
+
 @mastersthesis{Krischer02,
     author	= {Roy Krischer },
@@ -779,5 +813,5 @@
     editor	= {C. Dony and J. L. Knudsen and A. Romanovsky and A. Tripathi},
     booktitle	= {Advanced Topics in Exception Handling Techniques},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     series	= {Lecture Notes in Computer Science},
     volume	= 4119,
@@ -793,8 +827,9 @@
     author	= {Brian W. Kernighan and Dennis M. Ritchie},
     title	= {The {C} Programming Language},
-    publisher	= {Prentice Hall},
+    publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1988,
-    edition	= {second},
-    series	= {Prentice Hall Software Series},
+    edition	= {2nd},
+    series	= {Prentice-Hall Software Series},
     comment	= {
 	 based on draft-proposed ANSI C
@@ -807,7 +842,8 @@
     author	= {Brian W. Kernighan and Dennis M. Ritchie},
     title	= {The {C} Programming Language},
-    publisher	= {Prentice Hall},
+    publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1978,
-    edition	= {first},
+    edition	= {1st},
 }
 
@@ -835,12 +871,12 @@
 
 @manual{C++Concepts,
-	keywords = {ISO/IEC TS 19217:2015},
-	contributer = {a3moss@uwaterloo.ca},
-	key = {C++ Concepts},
-	title = {Information technology -- Programming languages -- {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Extensions for concepts},
-	organization = {International Standard ISO/IEC TS 19217:2015},
-	publisher = {International Standard Organization},
-	address = {http://www.iso.org},
-	year = 2015
+    keywords	= {ISO/IEC TS 19217:2015},
+    contributer	= {a3moss@uwaterloo.ca},
+    key		= {C++ Concepts},
+    title	= {Information technology -- Programming languages -- {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Extensions for concepts},
+    organization= {International Standard ISO/IEC TS 19217:2015},
+    publisher	= {International Standard Organization},
+    address	= {http://www.iso.org},
+    year	= 2015
 }
 
@@ -914,6 +950,7 @@
     title	= {{C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Primer},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1991,
-    edition	= {second},
+    edition	= {2nd},
     note	= {QA76.73.C15L57},
 }
@@ -925,6 +962,7 @@
     title	= {The {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Programming Language},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1986,
-    edition	= {first},
+    edition	= {1st},
     series	= {Addison-Wesley Series in Computer Science}
 }
@@ -936,6 +974,7 @@
     title	= {The {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Programming Language},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1991,
-    edition	= {second},
+    edition	= {2nd},
 }
 
@@ -945,7 +984,7 @@
     author	= {Bjarne Stroustrup},
     title	= {The {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Programming Language},
-    publisher	= {Addison-Wesley},
+    publisher	= {Addison Wesley Longman},
     year	= 1997,
-    edition	= {third},
+    edition	= {3rd},
 }
 
@@ -1002,4 +1041,5 @@
     title	= {Classics in Software Engineering},
     publisher	= {Yourdon Press},
+    address	= {New York},
     year	= 1979,
 }
@@ -1042,5 +1082,6 @@
 		Moss and J. Craig Schaffert and Robert Scheifler and Alan Snyder},
     title	= {CLU Reference Manual},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
+    address	= {New York},
     year	= 1981,
     volume	= 114,
@@ -1053,5 +1094,5 @@
     key		= {Cobol14},
     title	= {Programming Languages -- {Cobol}},
-    edition	= {second},
+    edition	= {2nd},
     organization= {International Standard ISO/IEC 1989:2014},
     publisher   = {International Standard Organization},
@@ -1106,5 +1147,5 @@
     title	= {Commentary on Standard {ML}},
     publisher	= {MIT Press},
-    address	= {Cambridge, Massachusetts, U.S.A.},
+    address	= {Cambridge},
     year	= 1991
 }
@@ -1132,5 +1173,5 @@
     year	= 1987,
     pages	= {151-170},
-    publisher	= {Springer-Verlag}
+    publisher	= {Springer}
 }
 
@@ -1138,7 +1179,8 @@
     keywords	= {common lisp},
     contributer	= {pabuhr@plg},
-    author	= {G. Steele},
+    author	= {Guy Steele},
     title	= {COMMON LISP: The Language},
     publisher	= {Digital Press},
+    address	= {New York},
     year	= 1984
 }
@@ -1183,5 +1225,5 @@
     year	= 1985,
     isbn	= {0-13-153271-5},
-    publisher	= {Prentice-Hall, Inc.},
+    publisher	= {Prentice-Hall},
     address	= {Upper Saddle River, NJ, USA},
     note	= {\href{http://www.usingcsp.com/cspbook.pdf}{http://\-www.usingcsp.com/\-cspbook.pdf}},
@@ -1202,7 +1244,7 @@
     author	= {Alfred V. Aho and Monica S. Lam and Ravi Sethi and Jeffrey D. Ullman},
     title	= {Compilers: Principles, Techniques, and Tools},
-    edition	= {second},
+    edition	= {2nd},
     year	= {2006},
-    publisher	= {Addison-Wesley Longman Publishing Co., Inc.},
+    publisher	= {Addison-Wesley Longman Publishing},
     address	= {Boston, MA, USA},
 }
@@ -1212,5 +1254,5 @@
     contributer	= {pabuhr@plg},
     author	= {David F. Bacon and Susan L. Graham and Oliver J. Sharp},
-    title	= {Compiler Transformations for High-Performance Computing},
+    title	= {Compiler Transformations for High-Performance Com\-puting},
     journal	= acmcs,
     volume	= 26,
@@ -1250,5 +1292,5 @@
     month	= sep,
     address	= {Waterloo, Ontario, Canada, N2L 3G1},
-    note	= {{\small\textsf{ftp://\-plg.uwaterloo.ca/\-pub/\-theses/\-MokThesis.ps.gz}}},
+    note	= {\href{http://plg.uwaterloo.ca/theses/MokThesis.pdf}{http://\-plg.uwaterloo.ca/\-theses/\-MokThesis.pdf}},
 }
 
@@ -1328,5 +1370,5 @@
     editor	= {P. E. Lauer},
     pages	= {165-198},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     address	= {Berlin, DE},
     year	= 1993,
@@ -1393,5 +1435,5 @@
     month	= jul,
     year	= 2015,
-    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}}},
+    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}}},
 }
 
@@ -1401,5 +1443,5 @@
     author	= {Alan Burns and Geoff Davies},
     title	= {Concurrent Programming},
-    publisher	= {Addison-Wesley},
+    publisher	= {Addison Wesley Longman},
     year	= 1993,
 }
@@ -1424,6 +1466,7 @@
     title	= {Concurrent Programming in {J}ava: Design Principles and Patterns},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1997,
-    edition	= {first},
+    edition	= {1st},
 }
 
@@ -1435,5 +1478,5 @@
     publisher	= {Oxford University Press},
     year	= 1998,
-    edition	= {first},
+    edition	= {1st},
 }
 
@@ -1444,6 +1487,7 @@
     title	= {Concurrent Programming in {J}ava: Design Principles and Patterns},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 2000,
-    edition	= {second},
+    edition	= {2nd},
 }
 
@@ -1453,5 +1497,6 @@
     author	= {N. H. Gehani and W. D. Roome},
     title	= {The {Concurrent C} Programming Language},
-    publisher	= {Silicon Press, NJ},
+    publisher	= {Silicon Press},
+    address	= {Summit},
     year	= 1989,
 }
@@ -1462,5 +1507,6 @@
     author	= {Gregory R. Andrews},
     title	= {Concurrent Programming: Principles and Practice},
-    publisher	= {Benjamin/Cummings Publishing Company, Inc., Redwood City, California},
+    publisher	= {Benjamin/Cummings Publish\-ing},
+    address	= {Redwood City},
     year	= 1991,
 }
@@ -1471,5 +1517,5 @@
     author	= {Peter A. Buhr and Ashif S. Harji},
     title	= {Concurrent Urban Legends},
-    journal	= {Concurrency and Computation: Practice and Experience},
+    journal	= ccpe,
     month	= aug,
     year	= 2005,
@@ -1497,5 +1543,5 @@
     publisher	= {Cambridge University Press},
     year	= 1998,
-    edition	= {second},
+    edition	= {2nd},
 }
 
@@ -1514,5 +1560,5 @@
     title	= {Condition Handling in the Lisp Language Family},
     booktitle	= {Exception Handling},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     volume	= 2022,
     series	= {LNCS},
@@ -1527,5 +1573,5 @@
     title	= {Conformace, Genericity, Inheritance and Enhancement},
     pages	= {223-233},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     year	= 1987,
     volume	= 276,
@@ -1636,13 +1682,12 @@
 
 @unpublished{Ditchfield:conversions,
-	contributer = {a3moss@uwaterloo.ca},
-	author = {Glen Ditchfield},
-	title = {Conversions for {Cforall}},
-	note = {\href{http://plg.uwaterloo.ca/~cforall/Conversions/index.html}{http://\-plg.uwaterloo.ca/\-\textasciitilde cforall/\-Conversions/\-index.html}},
-	month = {Nov},
-	year = {2002},
-	urldate = {28 July 2016},
-}
-
+    contributer	= {a3moss@uwaterloo.ca},
+    author	= {Glen Ditchfield},
+    title	= {Conversions for {Cforall}},
+    note	= {\href{http://plg.uwaterloo.ca/~cforall/Conversions/index.html}{http://\-plg.uwaterloo.ca/\-\textasciitilde cforall/\-Conversions/\-index.html}},
+    month	= {Nov},
+    year	= {2002},
+    urldate	= {28 July 2016},
+}
 
 @techreport{Dijkstra65,
@@ -1662,5 +1707,6 @@
     author	= {Christopher D. Marlin},
     title	= {Coroutines: A Programming Methodology, a Language Design and an Implementation},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
+    address	= {New York},
     year	= 1980,
     volume	= 95,
@@ -1699,4 +1745,14 @@
     publisher	= {Benjamin Cummings},
     year	= 1991,
+}
+
+@article{Moore75,
+    keywords	= {approximation methods, integrated circuits},
+    contributer	= {pabuhr@plg},
+    author	= {Gordon E. Moore},
+    title	= {Progress in Digital Integrated Electronics},
+    journal	= {Technical Digest, International Electron Devices Meeting, IEEE},
+    year	= 1975,
+    pages	= {11-13},
 }
 
@@ -1840,5 +1896,5 @@
     title	= {The Definition of Standard {ML}},
     publisher	= {MIT Press},
-    address	= {Cambridge, Massachusetts, U.S.A.},
+    address	= {Cambridge},
     year	= 1990
 }
@@ -1870,5 +1926,5 @@
     author	= {Peter A. Buhr and David Dice and Wim H. Hesselink},
     title	= {Dekker's Mutual Exclusion Algorithm Made RW-Safe},
-    journal	= {Concurrency and Computation: Practice and Experience},
+    journal	= ccpe,
     volume	= 28,
     number	= 1,
@@ -1920,4 +1976,5 @@
     title       = {The Design and Evolution of {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
     publisher   = {Addison-Wesley},
+    address	= {Boston},
     year        = 1994
 }
@@ -1977,5 +2034,6 @@
     author	= {G. Motet and A. Mapinard and J. C. Geoffroy},
     title	= {Design of Dependable {A}da Software},
-    publisher	= {Prentice Hall},
+    publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1996,
 }
@@ -2012,4 +2070,5 @@
     title	= {Design Patterns: Elements of Reusable Object-Oriented Software},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1995,
     series	= {Professional Computing Series},
@@ -2054,5 +2113,5 @@
     author	= {Ralph E. Johnson and Brian Foote},
     title	= {Designing Reusable Classes},
-    journal	= {Journal of Object-Oriented Programming},
+    journal	= joop,
     year	= 1988,
     volume	= 1, number = 2, pages = {22-35},
@@ -2109,4 +2168,5 @@
     title	= {A Discipline of Programming},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1976,
 }
@@ -2125,4 +2185,5 @@
     title	= {Distributed Systems: Principles and Paradigms},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 2002,
 }
@@ -2253,6 +2314,7 @@
     title	= {Eiffel: The Language},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1992,
-    series	= {Prentice Hall Object-Oriented Series},
+    series	= {Prentice-Hall Object-Oriented Series},
 }
 
@@ -2388,5 +2450,5 @@
     month	= jun,
     year	= 2015,
-    note	= {\href{http://www.erlang.org/doc/pdf/otp-system-documentation.pdf}{\textsf{http://www.erlang.org/\-doc/\-pdf/\-otp-system-documentation.pdf}}},
+    note	= {\href{http://www.erlang.org/doc/pdf/otp-system-documentation.pdf}{\textsf{http://www.erlang.org/\-doc/\-pdf/\-otp-system-\-documentation.pdf}}},
 }
 
@@ -2467,4 +2529,5 @@
     booktitle	= {Advances in COMPUTERS},
     publisher	= {Academic Press},
+    address	= {London},
     volume	= 56,
     year	= 2002,
@@ -2561,15 +2624,11 @@
     title	= {Exception Handling in Parallel Computations},
     journal	= sigplan,
+    publisher	= {ACM},
+    address	= {New York, NY, USA},
     volume	= 20,
     number	= 10,
     month	= oct,
     year	= 1985,
-    issn	= {0362-1340},
     pages	= {95-104},
-    url		= {http://doi.acm.org/10.1145/382286.382385},
-    doi		= {http://doi.acm.org/10.1145/382286.382385},
-    acmid	= {382385},
-    publisher	= {ACM},
-    address	= {New York, NY, USA},
 }
 
@@ -2680,5 +2739,5 @@
     title	= {Fault Tolerance and Exception Handling in {BETA}},
     booktitle	= {Exception Handling},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     volume	= 2022,
     series	= {Lecture Notes in Computer Science},
@@ -2839,5 +2898,5 @@
     title	= {A Fully Object-Oriented Exception Handling System: Rationale and Smalltalk Implementation},
     booktitle	= {Exception Handling},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     volume	= 2022,
     series	= {Lecture Notes in Computer Science},
@@ -2859,7 +2918,8 @@
     series	= {The Art of Computer Programming},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1973,
     volume	= 1,
-    edition	= {second},
+    edition	= {2nd},
 }
 
@@ -2912,5 +2972,5 @@
     author	= {Richard M. Stallman},
     organization= {Free Software Foundation},
-    address	= {Cambridge, MA}
+    address	= {Cambridge}
 }
 
@@ -2952,5 +3012,4 @@
 }
 
-
 @article{Haskell,
     keywords	= {lazy evaluation, type class},
@@ -2973,5 +3032,5 @@
     organization= {Google},
     year	= 2009,
-    note	= {\href{http://golang.org/ref/spec}{http://golang.org/\-ref/\-spec}},
+    note	= {\href{http://golang.org/ref/spec}{http://\-golang.org/\-ref/\-spec}},
 }
 
@@ -3090,5 +3149,6 @@
     author	= {Robert E. Strom and David F. Bacon and Arthur P. Goldberg and Andy Lowry and Daniel M. Yellin and Shaula Alexander Yemini}, 
     title	= {Hermes: A Language for Distributed Computing},
-    publisher	= {Prentice Hall},
+    publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     series	= {Innovative Technology},
     year	= 1991,
@@ -3134,5 +3194,5 @@
     author	= {Peter A. Buhr and David Dice and Wim H. Hesselink},
     title	= {High-Performance {$N$}-Thread Software Solutions for Mutual Exclusion},
-    journal	= {Concurrency and Computation: Practice and Experience},
+    journal	= ccpe,
     volume	= 27,
     number	= 3,
@@ -3148,5 +3208,5 @@
     title	= {Zum Hilbertschen Aufbau der reellen Zahlen},
     publisher	= {Springer},
-    journal	= {Mathematische Annalen},
+    journal	= mathann,
     number	= 1,
     volume	= 99,
@@ -3187,4 +3247,5 @@
     title	= {The Icon Programming Language},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1983,
 }
@@ -3262,5 +3323,4 @@
     issn	= {0164-0925},
     pages	= {1270--1343},
-    doi		= {http://doi.acm.org/10.1145/1108970.1108975},
     publisher	= {ACM Press},
     address	= {New York, NY, USA},
@@ -3277,6 +3337,5 @@
     pages	= {55-59},
     issn	= {0163-5719},
-    doi		= {http://doi.acm.org/10.1145/872736.806932},
- }
+}
 
 @book{Algol68,
@@ -3361,4 +3420,5 @@
     title	= {Interacting Processes: A Multiparty Approach to Coordinated Distributed Programming},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     series	= {ACM Press Books},
     year	= 1996,
@@ -3434,4 +3494,5 @@
     title	= {Introduction to Algorithms},
     publisher	= {MIT Press/McGraw-Hill},
+    address	= {Cambridge},
     series	= {Electrical Engineering and Computer Science Series},
     year	= 1992,
@@ -3444,4 +3505,5 @@
     title	= {Introduction to Automata Theory, Languages and Computation},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1979,
 }
@@ -3476,6 +3538,7 @@
     title	= {An Introduction to Operating Systems},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1990,
-    edition	= {second},
+    edition	= {2nd},
 }
 
@@ -3525,5 +3588,5 @@
     title	= {Issues with Exception Hnadling in Object-Oriented Systems},
     booktitle	= {ECOOP'97},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     volume	= 1241,
     series	= {Lecture Notes in Computer Science},
@@ -3553,6 +3616,7 @@
     title       = {The {Java} Language Specification},
     publisher	= {Addison-Wesley},
+    address	= {Reading},
     year        = 2000,
-    edition	= {second},
+    edition	= {2nd},
 }
 
@@ -3597,5 +3661,5 @@
     title	= {Konstruktion nichtrekursiver Funktionen},
     publisher	= {Springer},
-    journal	= {Mathematische Annalen},
+    journal	= mathann,
     number	= 111,
     volume	= 1,
@@ -3740,4 +3804,5 @@
     title	= {Lisp 1.5 Primer},
     publisher	= {Dickenson Publishing},
+    address	= {Belmont},
     year	= 1967,
 }
@@ -3937,5 +4002,5 @@
     booktitle	= {Proceedings of the European Conference on Object Oriented Programming},
     organization= {ECOOP'88},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     volume	= 322,
     editor	= {S. Gjessing and K. Nygaard},
@@ -3979,4 +4044,5 @@
     title	= {Modern C++ Design: Generic Programming and Design Patterns Applied},
     publisher	= {Addison-Wesley Professional},
+    address	= {Boston},
     month	= feb,
     year	= 2001,
@@ -3990,4 +4056,5 @@
     title	= {Modern Operating Systems},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1992,
 }
@@ -4310,5 +4377,5 @@
     title	= {Nesting in an Object Oriented Language is NOT for the Birds},
     booktitle	= {Proceedings of the European Conference on Object Oriented Programming},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     volume	= 322,
     editor	= {S. Gjessing and K. Nygaard},
@@ -4437,5 +4504,5 @@
     editor	= {S. Gjessing and K. Nygaard},
     organization= {DND, The Norwegian Computer Society},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     comment	= {
 	   Objectives:
@@ -4472,4 +4539,5 @@
     title	= {Object-oriented programming; an evolutionary approach},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1986
 }
@@ -4481,4 +4549,5 @@
     title	= {Object-oriented Programming in the {BETA} Programming Language},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1993,
 }
@@ -4512,7 +4581,8 @@
     author	= {Bertrand Meyer},
     title	= {Object-oriented Software Construction},
-    publisher	= {Prentice Hall},
+    publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= {1988},
-    series	= {Prentice Hall International Series in Computer Science},
+    series	= {Prentice-Hall International Series in Computer Science},
 }
 
@@ -4541,6 +4611,7 @@
     author	= {John Galletly},
     title	= {{OCCAM} 2: Including {OCCAM} 2.1},
-    publisher	= {{UCL} (University College London) Press Ltd.},
-    edition	= {second},
+    publisher	= {{UCL} (University College London) Press},
+    address	= {London},
+    edition	= {2nd},
     year	= 1996,
 }
@@ -4602,5 +4673,5 @@
     month	= jul,
     year	= 2013,
-    note	= {\href{http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf}{\textsf{http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf}}},
+    note	= {\href{http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf}{\textsf{http://\-www.openmp.org/\-mp-documents/\-OpenMP4.0.0.pdf}}},
 }
 
@@ -4611,6 +4682,7 @@
     title	= {Operating Systems},
     publisher	= {Pearson Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 2004,
-    edition	= {third},
+    edition	= {3rd},
 }
 
@@ -4621,6 +4693,7 @@
     title	= {Operating Systems: Internals and Design Principles},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1998,
-    edition	= {third},
+    edition	= {3rd},
 }
 
@@ -4631,6 +4704,7 @@
     title	= {Operating Systems: Internals and Design Principles},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 2001,
-    edition	= {fourth},
+    edition	= {4th},
 }
 
@@ -4641,6 +4715,7 @@
     title	= {Operating System Concepts},
     publisher	= {Addision-Wesley},
+    address	= {Boston},
     year	= 1991,
-    edition	= {third},
+    edition	= {3rd},
 }
 
@@ -4651,4 +4726,5 @@
     title	= {Operating Systems : Design and Implementation},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     series	= {Software Series},
     year	= 1987,
@@ -4661,4 +4737,5 @@
     title	= {Operating System Principles},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1973,
 }
@@ -4670,4 +4747,5 @@
     title	= {Operating System Principles},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 2003,
 }
@@ -4686,20 +4764,20 @@
 
 @article{Ganzinger80,
-	contributer = {a3moss@uwaterloo.ca},
-	author = {Ganzinger, Harald and Ripken, Knut},
-	title = {Operator Identification in {ADA}: Formal Specification, Complexity, and Concrete Implementation},
-	journal = {SIGPLAN Notices},
-	issue_date = {February 1980},
-	volume = {15},
-	number = {2},
-	month = feb,
-	year = {1980},
-	issn = {0362-1340},
-	pages = {30--42},
-	numpages = {13},
-	url = {http://doi.acm.org/10.1145/947586.947589},
-	doi = {10.1145/947586.947589},
-	publisher = {ACM},
-	address = {New York, NY, USA}
+    contributer	= {a3moss@uwaterloo.ca},
+    author	= {Ganzinger, Harald and Ripken, Knut},
+    title	= {Operator Identification in {ADA}: Formal Specification, Complexity, and Concrete Implementation},
+    journal	= {SIGPLAN Notices},
+    issue_date	= {February 1980},
+    volume	= {15},
+    number	= {2},
+    month	= feb,
+    year	= {1980},
+    issn	= {0362-1340},
+    pages	= {30--42},
+    numpages	= {13},
+    url		= {http://doi.acm.org/10.1145/947586.947589},
+    doi		= {10.1145/947586.947589},
+    publisher	= {ACM},
+    address	= {New York, NY, USA}
 }
 
@@ -4723,5 +4801,5 @@
     title	= {{OS} and {DOS} {PL/I} Reference Manual},
     organization= {International Business Machines},
-    edition	= {first},
+    edition	= {1st},
     month	= sep,
     year	= 1981,
@@ -4843,5 +4921,5 @@
     booktitle	= {Parallel Programming in {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
     publisher	= {MIT Press},
-    address	= {Cambridge, MA, USA},
+    address	= {Cambridge},
     series	= {Scientific and Engineering Computation Series},
     pages	= {507-546},
@@ -4922,5 +5000,5 @@
     publisher	= {Springer--Verlag},
     year	= 1985,
-    edition	= {third},
+    edition	= {3rd},
     note	= {Revised by Andrew B. Mickel and James F. Miner, ISO Pascal Standard}
 }
@@ -4933,5 +5011,5 @@
     publisher	= {Springer--Verlag},
     year	= 1975,
-    edition	= {first},
+    edition	= {1st},
 }
 
@@ -4955,5 +5033,5 @@
     title	= {{P}ascal/{VS} Language Reference Manual},
     organization= {International Business Machines},
-    edition	= {first},
+    edition	= {1st},
     year	= 1981,
     note	= {Manual SH20-6168-1},
@@ -5107,4 +5185,5 @@
     title	= {Principles of Concurrent Programming},
     publisher	= {Prentice-Hall International},
+    address	= {Englewood Cliffs},
     year	= 1982,
 }
@@ -5114,4 +5193,5 @@
     title	= {Principles of Programming Languages},
     publisher	= {Prentice-Hall International},
+    address	= {Englewood Cliffs},
     year	= 1981,
     series	= {Series in Computer Science}
@@ -5185,4 +5265,5 @@
     title	= {Programming with {POSIX} Threads},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     series	= {Professional Computing},
     year	= 1997,
@@ -5194,5 +5275,5 @@
     author	= {J. T. Schwartz and R. B. K. Dewar and E. Dubinsky and E. Schonberg},
     title	= {Programming with Sets: An Introduction to {SETL}},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     year	= 1986,
 }
@@ -5235,5 +5316,5 @@
     key		= {C++14},
     title	= {Programming Languages -- {C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
-    edition	= {fourth},
+    edition	= {4th},
     organization= {International Standard ISO/IEC 14882:2014 (E)},
     publisher   = {International Standard Organization},
@@ -5329,7 +5410,8 @@
     author	= {Niklaus Wirth},
     title	= {Programming in Modula-2},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
+    address	= {New York},
     year	= 1988,
-    edition	= {fourth},
+    edition	= {4th},
     series	= {Texts and Monographs in Computer Science},
 }
@@ -5343,5 +5425,5 @@
     month	= feb,
     year	= 1983,
-    note	= {Published by Springer-Verlag}
+    note	= {Springer, New York},
 }
 
@@ -5351,5 +5433,5 @@
     title	= {The Programming Language {Ada}: Reference Manual},
     organization= {United States Department of Defense},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     year	= 1981
 }
@@ -5505,22 +5587,22 @@
 
 @article{Grossman06,
- keywords = {Cyclone, existential types, polymorphism, type variables},
- contributer = {a3moss@plg},
- author = {Grossman, Dan},
- title = {Quantified Types in an Imperative Language},
- journal = toplas,
- issue_date = {May 2006},
- volume = {28},
- number = {3},
- month = may,
- year = {2006},
- issn = {0164-0925},
- pages = {429--475},
- numpages = {47},
- url = {http://doi.acm.org.proxy.lib.uwaterloo.ca/10.1145/1133651.1133653},
- doi = {10.1145/1133651.1133653},
- acmid = {1133653},
- publisher = {ACM},
- address = {New York, NY, USA},
+    keywords	= {Cyclone, existential types, polymorphism, type variables},
+    contributer	= {a3moss@plg},
+    author	= {Grossman, Dan},
+    title	= {Quantified Types in an Imperative Language},
+    journal	= toplas,
+    issue_date	= {May 2006},
+    volume	= {28},
+    number	= {3},
+    month	= may,
+    year	= {2006},
+    issn	= {0164-0925},
+    pages	= {429--475},
+    numpages	= {47},
+    url		= {http://doi.acm.org.proxy.lib.uwaterloo.ca/10.1145/1133651.1133653},
+    doi		= {10.1145/1133651.1133653},
+    acmid	= {1133653},
+    publisher	= {ACM},
+    address	= {New York, NY, USA},
 }
 
@@ -5569,5 +5651,5 @@
     title	= {{A}da Reference Manual},
     edition	= {International Standard {ISO}/{IEC} {8652:1995(E)} with {COR.1:2000}},
-    organization = {Intermetrics, Inc.},
+    organization= {Intermetrics, Inc.},
     month	= dec,
     year	= 1995,
@@ -5579,5 +5661,5 @@
     contributer	= {pabuhr@plg},
     title	= {Programming languages -- {Ada}},
-    edition	= {third},
+    edition	= {3rd},
     organization= {International Standard ISO/IEC 1989:2014},
     publisher   = {International Standard Organization},
@@ -5604,4 +5686,5 @@
     series	= {The Real-Time for Java Expert Group, {\small\textsf{http://\-www.rtj.org}}},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 2000,
 }
@@ -5755,4 +5838,13 @@
 % S
 
+@manual{Scala,
+    keywords	= {Scala programming language},
+    contributer	= {pabuhr@plg},
+    title	= {{Scala} Language Specification, Version 2.11},
+    organization= {\'{E}cole Polytechnique F\'{e}d\'{e}rale de Lausanne},
+    year	= 2016,
+    note	= {\href{http://www.scala-lang.org/files/archive/spec/2.11}{http://\-www.scala-lang.org/\-files/\-archive/\-spec/\-2.11}},
+}
+
 @inproceedings{Michael04,
     keywords	= {lock free, dynamic memory allocation},
@@ -5802,5 +5894,5 @@
     pages	= {51-67},
     editor	= {G. Kahn and D. B. MacQueen and G. D. Plotkin},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     note	= {Lecture Notes in Computer Science v. 173},
 }
@@ -5852,5 +5944,5 @@
     month	= may,
     year	= 2001,
-    note	= {{\small\textsf{http://www.python.org/peps/pep-0255.html}}},
+    note	= {\href{http://www.python.org/peps/pep-0255.html}{http://\-www.python.org/\-peps/\-pep-0255.html}},
 }
 
@@ -5871,20 +5963,20 @@
 
 @article{Pennello80,
-	contributer = {a3moss@uwaterloo.ca},
-	author = {Pennello, Tom and DeRemer, Frank and Meyers, Richard},
-	title = {A Simplified Operator Identification Scheme for {Ada}},
-	journal = {SIGPLAN Notices},
-	issue_date = {July-August 1980},
-	volume = {15},
-	number = {7 and 8},
-	month = jul,
-	year = {1980},
-	issn = {0362-1340},
-	pages = {82--87},
-	numpages = {6},
-	url = {http://doi.acm.org/10.1145/947680.947688},
-	doi = {10.1145/947680.947688},
-	publisher = {ACM},
-	address = {New York, NY, USA},
+    contributer	= {a3moss@uwaterloo.ca},
+    author	= {Pennello, Tom and DeRemer, Frank and Meyers, Richard},
+    title	= {A Simplified Operator Identification Scheme for {Ada}},
+    journal	= {SIGPLAN Notices},
+    issue_date	= {July-August 1980},
+    volume	= {15},
+    number	= {7 and 8},
+    month	= jul,
+    year	= {1980},
+    issn	= {0362-1340},
+    pages	= {82--87},
+    numpages	= {6},
+    url		= {http://doi.acm.org/10.1145/947680.947688},
+    doi		= {10.1145/947680.947688},
+    publisher	= {ACM},
+    address	= {New York, NY, USA},
 }
 
@@ -5927,14 +6019,14 @@
     year	= {1980},
     address	= {Lund, Sweden},
-    edition	= {second},
+    edition	= {2nd},
 }
 
 @book{Simula67,
-    author	= "O-J Dahl and B. Myhrhaug and K. Nygaard",
-    address	= "Oslo Norway",
+    author	= {O-J Dahl and B. Myhrhaug and K. Nygaard},
+    title	= {Simula67 Common Base Language},
     month	= oct,
     year	= 1970,
-    publisher	= "Norwegian Computing Center",
-    title	= "Simula67 Common Base Language"
+    publisher	= {Norwegian Com\-puting Center},
+    address	= {Oslo Norway},
 }
 
@@ -5945,4 +6037,5 @@
     title	= {Smalltalk-80: The Language and its Implementation},
     publisher	= {Addison-Wesley},
+    address	= {Reading},
     year	= 1983
 }
@@ -5966,6 +6059,7 @@
     author	= {R. E. Griswold and J. F. Poage and I. P. Polonsky},
     title	= {The SNOBOL4 Programming Language},
-    edition	= {second},
+    edition	= {2nd},
     publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1971,
 }
@@ -6073,5 +6167,5 @@
     author	= {R. H. Campbell and A. N. Habermann},
     title	= {The Specification of Process Synchronization by Path Expressions},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     year	= 1974,
     volume	= 16,
@@ -6117,5 +6211,5 @@
     title	= {A Standard {ML} Compiler},
     booktitle	= {Functional Programming Languages and Computer Architecture},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     series	= {Lecture Notes in Computer Science},
     volume	= 274,
@@ -6172,4 +6266,5 @@
     title	= {Structured Concurrent Programming with Operating System Applications},
     publisher	= {Addison-Wesley},
+    address	= {Boston},
     year	= 1978,
 }
@@ -6320,5 +6415,6 @@
     author	= {Gadi Taubenfeld},
     title	= {Synchronization Algorithms and Concurrent Programming},
-    publisher	= {Pearson/Prentice Hall},
+    publisher	= {Pearson/Prentice-Hall},
+    address	= {Harlow, England},
     year	= 2006,
 }
@@ -6380,7 +6476,8 @@
     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},
     title	= {Systems Programming with Modula-3},
-    publisher	= {Prentice-Hall, Inc.},
+    publisher	= {Prentice-Hall},
+    address	= {Englewood Cliffs},
     year	= 1991,
-    series	= {Prentice Hall Series in Innovative Technology}
+    series	= {Prentice-Hall Series in Innovative Technology}
 }
 
@@ -6464,5 +6561,5 @@
     pages	= {408-423},
     editor	= {B. Robinet},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     note	= {Lecture Notes in Computer Science, v. 19},
     abstract	= {
@@ -6546,5 +6643,5 @@
     publisher	= {Holt Software Associates Inc.},
     year	= 1992,
-    edition	= {third},
+    edition	= {3rd},
 }
 
@@ -6566,4 +6663,5 @@
     title	= {Tutorial: Programming Language Design},
     publisher	= {Computer Society Press},
+    address	= {Los Alamitos},
     year	= 1980
 }
@@ -6635,11 +6733,12 @@
 % U
 
-@unpublished{uC++book,
-    keywords	= {control structure, concurrency},
+@book{uC++book,
+    keywords	= {control structure, concurrency, uC++},
     contributer	= {pabuhr@plg},
     author	= {Peter A. Buhr},
-    title	= {Understanding Control Flow with Concurrent Programming using $\mu${C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
-    year	= 1999,
-    note	= {Textbook in preparation}
+    title	= {Understanding Control Flow: Concurrent Programming using $\mu${C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}}},
+    publisher	= {Springer},
+    address	= {Switzerland},
+    year	= 2016,
 }
 
@@ -6664,5 +6763,5 @@
     booktitle	= {Proceedings of the International Workshop on Memory Management},
     location	= {St. Malo, France},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
     series	= {Lecture Notes in Computer Science},
     volume	= 637,
@@ -6788,4 +6887,5 @@
     title	= {VAX-11 Architecture Reference Manual},
     publisher	= {Digital Press},
+    address	= {Bedford},
     month	= may,
     year	= 1982,
@@ -6796,4 +6896,5 @@
     title	= {{VAX/VMS} Internals and Data Structures Version 4.4},
     publisher	= {Digital Press},
+    address	= {Bedford},
     year	= 1988,
 }
@@ -6805,5 +6906,6 @@
     title	= {Verifying a Simplification of Mutual Exclusion by {L}ycklama--{H}adzilacos},
     journal	= {Acta Informatica},
-    publisher	= {Springer-Verlag},
+    publisher	= {Springer},
+    address	= {New York},
     year	= {2013},
     volume	= {50},
@@ -6871,5 +6973,5 @@
     month	= jun,
     year	= 1985,
-    note	= {\textsf{http://www.hpl.hp.com/\-techreports/\-tandem/\-TR-85.7.pdf}},
+    note	= {\href{http://www.hpl.hp.com/techreports/tandem/TR-85.7.pdf}{http://www.hpl.hp.com/\-techreports/\-tandem/\-TR-85.7.pdf}},
 }
 
