% Bibliography of key references for "LaTeX for Thesis and Large Documents" % For use with BibTeX % -------------------------------------------------- % Cforall @misc{cfa:frontpage, url = {https://cforall.uwaterloo.ca} } @article{cfa:typesystem, author = {Aaron Moss and Robert Schluntz and Peter A. Buhr}, title = {{\CFA} : Adding modern programming language features to {C}}, journal = {Softw. Pract. Exp.}, volume = {48}, number = {12}, pages = {2111--2146}, year = {2018}, } % -------------------------------------------------- % C Array facts @misc{arr:gnu-flex-mbr, title = {Arrays of Length Zero}, howpublished= {\url{https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html}}, } % -------------------------------------------------- % Array prior work @inproceedings{arr:futhark:tytheory, author = {Troels Henriksen and Martin Elsman}, title = {Towards Size-Dependent Types for Array Programming}, year = {2021}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, booktitle = {Proceedings of the 7th ACM SIGPLAN International Workshop on Libraries, Languages and Compilers for Array Programming}, pages = {1-14}, numpages = {14}, location = {Virtual, Canada}, series = {ARRAY 2021} } @article{arr:dex:long, author = {Adam Paszke and Daniel D. Johnson and David Duvenaud and Dimitrios Vytiniotis and Alexey Radul and Matthew J. Johnson and Jonathan Ragan-Kelley and Dougal Maclaurin}, title = {Getting to the Point. Index Sets and Parallelism-Preserving Autodiff for Pointful Array Programming}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, volume = 5, number = {ICFP}, year = 2021, journal = {Proc. ACM Program. Lang.}, month = {aug}, } % -------------------------------------------------- % Linked-list prior work @misc{CFAStackEvaluation, contributer = {a3moss@plg}, author = {Aaron Moss}, title = {\textsf{C}$\mathbf{\forall}$ Stack Evaluation Programs}, year = 2018, howpublished= {\url{https://cforall.uwaterloo.ca/CFAStackEvaluation.zip}}, } @misc{lst:linuxq, key = {queue}, title = {queue(7) -- Linux manual page}, howpublished= {\url{https://man7.org/linux/man-pages/man3/queue.3.html}}, } % see also https://man7.org/linux/man-pages/man7/queue.7.license.html % https://man7.org/tlpi/ % https://www.kernel.org/doc/man-pages/ @misc{lst:stl, key = {list}, title = {std::list}, howpublished= {\url{https://en.cppreference.com/w/cpp/container/list}}, } @article{Blache19, author = {Gunter Blache}, title = {Handling Index-out-of-bounds in safety-critical embedded {C} code using model-based development}, journal = {Software \& Systems Modeling}, volume = 18, year = 2019, pages = {1795-1805}, } @article{Oorschot23, author = {van Oorschot, Paul C.}, journal = {IEEE Security \& Privacy}, title = {Memory Errors and Memory Safety: {C} as a Case Study}, year = 2023, volume = 21, number = 2, pages = {70-76}, } @InProceedings{Ruef19, author = {Andrew Ruef and Leonidas Lampropoulos and Ian Sweet and David Tarditi and Michael Hicks}, title = {Achieving Safety Incrementally with {Checked C}}, editor = {Flemming Nielson and David Sands}, booktitle = {Principles of Security and Trust}, publisher = {Springer International Publishing}, address = {Cham}, year = {2019}, pages = {76-98}, } @inproceedings{Elliott18, keywords = {Safety;Static analysis;Tools;Cyclones;Benchmark testing;Security;Computer bugs;programming languages;security}, author = {Elliott, Archibald Samuel and Ruef, Andrew and Hicks, Michael and Tarditi, David}, booktitle = {2018 IEEE Cybersecurity Development (SecDev)}, title = {Checked C: Making C Safe by Extension}, year = 2018, month = nov, pages = {53-60}, } @misc{Mendio24, contributer = {pabuhr@plg}, title = {What are the most secure programming languages?}, author = {Mend.io (White Source Ltd.)}, year = 2024, howpublished= {\url{https://www.mend.io/most-secure-programming-languages}}, }