source: doc/theses/mike_brooks_MMath/uw-ethesis.bib

Last change on this file was f85de47, checked in by Michael Brooks <mlbrooks@…>, 4 weeks ago

String chapter work.

General copy-editing throughout the chapter.

Rewrite and elaborate "RAII limitations."

Move "Logical overlap" up to features' section and integrate flow with assignment-semantics predecessor.

Re-brand "Memory management" as "General implementation," and move to front of "Storage Management."

Elaborate performance experiment descriptions, giving harness sketches.

Convert first performance experiment graph (peq-cppemu) to draw directly from benchmark result file, now included in git. Similar work on remaining graphs, and adding missing data, is forthcoming.

To build thesis may now require pip3 install pandas.

  • Property mode set to 100644
File size: 4.6 KB
Line 
1% Bibliography of key references for "LaTeX for Thesis and Large Documents"
2% For use with BibTeX
3
4% --------------------------------------------------
5% Cforall
6
7@misc{cfa:frontpage,
8    url         = {https://cforall.uwaterloo.ca}
9}
10@article{cfa:typesystem,
11    author    = {Aaron Moss and Robert Schluntz and Peter A. Buhr},
12    title     = {{\CFA} : Adding modern programming language features to {C}},
13    journal   = {Softw. Pract. Exp.},
14    volume    = {48},
15    number    = {12},
16    pages     = {2111--2146},
17    year      = {2018},
18}
19
20% --------------------------------------------------
21% C facts
22
23@misc{arr:gnu-flex-mbr,
24    title       = {Arrays of Length Zero},
25    howpublished= {\url{https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html}},
26}
27
28
29% --------------------------------------------------
30% C++ facts
31
32@misc{cxx:raii-abi,
33    title       = {Itanium C++ ABI},
34    howpublished= {\url{https://itanium-cxx-abi.github.io/cxx-abi/abi.html}},
35}
36
37
38% --------------------------------------------------
39% Array prior work
40
41@inproceedings{arr:futhark:tytheory,
42    author      = {Troels Henriksen and Martin Elsman},
43    title       = {Towards Size-Dependent Types for Array Programming},
44    year        = {2021},
45    publisher   = {Association for Computing Machinery},
46    address     = {New York, NY, USA},
47    booktitle   = {Proceedings of the 7th ACM SIGPLAN International Workshop on Libraries, Languages and Compilers for Array Programming},
48    pages       = {1-14},
49    numpages    = {14},
50    location    = {Virtual, Canada},
51    series      = {ARRAY 2021}
52}
53
54@article{arr:dex:long,
55    author      = {Adam Paszke and Daniel D. Johnson and David Duvenaud and
56                   Dimitrios Vytiniotis and Alexey Radul and Matthew J. Johnson and
57                   Jonathan Ragan-Kelley and Dougal Maclaurin},
58    title       = {Getting to the Point. Index Sets and Parallelism-Preserving Autodiff
59                   for Pointful Array Programming},
60    publisher   = {Association for Computing Machinery},
61    address     = {New York, NY, USA},
62    volume      = 5,
63    number      = {ICFP},
64    year        = 2021,
65    journal     = {Proc. ACM Program. Lang.},
66    month       = {aug},
67}
68
69% --------------------------------------------------
70% Linked-list prior work
71
72@misc{CFAStackEvaluation,
73    contributer = {a3moss@plg},
74    author      = {Aaron Moss},
75    title       = {\textsf{C}$\mathbf{\forall}$ Stack Evaluation Programs},
76    year        = 2018,
77    howpublished= {\url{https://cforall.uwaterloo.ca/CFAStackEvaluation.zip}},
78}
79
80@misc{lst:linuxq,
81    key         = {queue},
82    title       = {queue(7) -- Linux manual page},
83    howpublished= {\url{https://man7.org/linux/man-pages/man3/queue.3.html}},
84}
85% see also https://man7.org/linux/man-pages/man7/queue.7.license.html
86%          https://man7.org/tlpi/
87%          https://www.kernel.org/doc/man-pages/
88
89@misc{lst:stl,
90    key         = {list},
91    title       = {std::list},
92    howpublished= {\url{https://en.cppreference.com/w/cpp/container/list}},
93}
94
95@article{Blache19,
96    author      = {Gunter Blache},
97    title       = {Handling Index-out-of-bounds in safety-critical embedded {C} code using model-based development},
98    journal     = {Software \& Systems Modeling},
99    volume      = 18,
100    year        = 2019,
101    pages       = {1795-1805},
102}
103
104@article{Oorschot23,
105    author      = {van Oorschot, Paul C.},
106    journal     = {IEEE Security \& Privacy}, 
107    title       = {Memory Errors and Memory Safety: {C} as a Case Study}, 
108    year        = 2023,
109    volume      = 21,
110    number      = 2,
111    pages       = {70-76},
112}
113
114@InProceedings{Ruef19,
115    author      = {Andrew Ruef and Leonidas Lampropoulos and Ian Sweet and David Tarditi and Michael Hicks},
116    title       = {Achieving Safety Incrementally with {Checked C}},
117    editor      = {Flemming Nielson and David Sands},
118    booktitle   = {Principles of Security and Trust},
119    publisher   = {Springer International Publishing},
120    address     = {Cham},
121    year        = {2019},
122    pages       = {76-98},
123}
124
125@inproceedings{Elliott18,
126    keywords    = {Safety;Static analysis;Tools;Cyclones;Benchmark testing;Security;Computer bugs;programming languages;security},
127    author      = {Elliott, Archibald Samuel and Ruef, Andrew and Hicks, Michael and Tarditi, David},
128    booktitle   = {2018 IEEE Cybersecurity Development (SecDev)}, 
129    title       = {Checked C: Making C Safe by Extension}, 
130    year        = 2018,
131    month       = nov,
132    pages       = {53-60},
133}
134
135@misc{Mendio24,
136    contributer = {pabuhr@plg},
137    title       = {What are the most secure programming languages?},
138    author      = {Mend.io (White Source Ltd.)},
139    year        = 2024,
140    howpublished= {\url{https://www.mend.io/most-secure-programming-languages}},
141}
142
143@misc{RVO20,
144    contributer = {pabuhr@plg},
145    title       = {Return value optimization ({RVO})},
146    author      = {Special Interest Group on {C++}},
147    year        = 2020,
148    month       = jun,
149    howpublished= {\url{https://sigcpp.github.io/2020/06/08/return-value-optimization}},
150}
Note: See TracBrowser for help on using the repository browser.