<bibliography>
 <citation type="book" key="Baase">
  <author>Sara <surname>Baase</surname></author>
  <year>1988</year>
  <title>Computer Algorithms</title>
  <edition>second</edition>
  <publisher>Addison-Wesley Publishing</publisher>
  <address>Reading, MA, USA</address>
 </citation>
 <citation type="book" key="Brady">
  <author>Edwin <surname>Brady</surname></author>
  <year>2017</year>
  <title>Type-Driven Development with Idris</title>
  <publisher>Manning Publications</publisher>
  <address>USA</address>
 </citation>
 <citation type="book" key="Burden">
  <author>Richard L. <surname>Burden</surname></author>
  <author>J. Douglas <surname>Faires</surname></author>
  <year>1985</year>
  <title>Numerical Analysis</title>
  <edition>third</edition>
  <publisher>Prindle, Weber, &#38; Schmidt</publisher>
 </citation>
 <citation type="manual" key="codeorg">
  <organization>Code.org</organization>
  <year>2017</year>
  <title>Lesson 13: Introduction to Arrays</title>
 </citation>
 <citation type="book" key="HtDP">
  <author>Matthias <surname>Felleisen</surname></author>
  <author>Robert Bruce <surname>Findler</surname></author>
  <author>Matthew <surname>Flatt</surname></author>
  <author>Shriram <surname>Krishnamurthi</surname></author>
  <year>2001</year>
  <title>How to Design Programs: An Introduction to Programming and Computing</title>
  <publisher>MIT Press</publisher>
  <address>Cambridge, MA, USA</address>
 </citation>
 <citation type="unpublished" key="HtDP2">
  <author>Matthias <surname>Felleisen</surname></author>
  <author>Robert Bruce <surname>Findler</surname></author>
  <author>Matthew <surname>Flatt</surname></author>
  <author>Shriram <surname>Krishnamurthi</surname></author>
  <year>2015</year>
  <title>How to Design Programs</title>
  <note>Http://www.ccs.neu.edu/home/matthias/HtDP2e/</note>
 </citation>
 <citation type="book" key="Ford">
  <author>William <surname>Ford</surname></author>
  <author>William <surname>Topp</surname></author>
  <year>1996</year>
  <title>Data Structures with C++</title>
  <edition>first</edition>
  <publisher>Prentice Hall</publisher>
 </citation>
 <citation type="book" key="Goodrich">
  <author>Michael T. <surname>Goodrich</surname></author>
  <author>Roberto <surname>Tamassia</surname></author>
  <year>2001</year>
  <title>Data Structures and Algorithms in Java</title>
  <edition>second</edition>
  <publisher>John Wiley &#38; Sons</publisher>
 </citation>
 <citation type="book" key="Knuth3">
  <author>Donald E. <surname>Knuth</surname></author>
  <year>1998</year>
  <title>The Art of Computer Programming, Volume 3: Sorting and Searching</title>
  <edition>second</edition>
  <publisher>Addison Wesley Longman Publishing Co., Inc.</publisher>
  <address>Redwood City, CA, USA</address>
 </citation>
 <citation type="inproceedings" key="mtm22">
  <author>Marco T. <surname>Moraz&#225;n</surname></author>
  <year>2011</year>
  <title>Functional Video Games in the CS1 Classroom</title>
  <editor>Rex <surname>Page</surname></editor>
  <editor>Zolt&#225;n <surname>Horv&#225;th</surname></editor>
  <editor>Vikt&#243;ria <surname>Zs&#243;k</surname></editor>
  <booktitle>Trends in Functional Programming: 11th International Symposium, TFP 2010, Norman, OK, USA, May 17-19, 2010. Revised Selected Papers</booktitle>
  <series>Lecture Notes in Computer Science</series>
  <publisher>Springer Berlin Heidelberg</publisher>
  <address>Berlin, Heidelberg</address>
  <pages>166&#8211;183</pages>
  <doi>10.1007/978-3-642-22941-1_11</doi>
 </citation>
 <citation type="inproceedings" key="mtm24">
  <author>Marco T. <surname>Moraz&#225;n</surname></author>
  <year>2012</year>
  <title>Functional Video Games in CS1 II</title>
  <editor>Ricardo <surname>Pe&#241;a</surname></editor>
  <editor>Rex <surname>Page</surname></editor>
  <booktitle>Trends in Functional Programming: 12th International Symposium, TFP 2011, Madrid, Spain, May 16-18, 2011, Revised Selected Papers</booktitle>
  <series>Lecture Notes in Computer Science</series>
  <volume>7193</volume>
  <publisher>Springer Berlin Heidelberg</publisher>
  <address>Berlin, Heidelberg</address>
  <pages>146&#8211;162</pages>
  <doi>10.1007/978-3-642-32037-8_10</doi>
 </citation>
 <citation type="inproceedings" key="mtm26">
  <author>Marco T. <surname>Moraz&#225;n</surname></author>
  <year>2014</year>
  <title>Functional Video Games in CS1 III</title>
  <editor>Jay <surname>McCarthy</surname></editor>
  <booktitle>Trends in Functional Programming: 14th International Symposium, TFP 2013, Provo, UT, USA, May 14-16, 2013, Revised Selected Papers</booktitle>
  <series>Lecture Notes in Computer Science</series>
  <volume>8322</volume>
  <publisher>Springer Berlin Heidelberg</publisher>
  <address>Berlin, Heidelberg</address>
  <pages>149&#8211;167</pages>
  <doi>10.1007/978-3-642-45340-3_10</doi>
 </citation>
 <citation type="article" key="mtm25">
  <author>Marco T. <surname>Moraz&#225;n</surname></author>
  <year>2015</year>
  <title>Generative and Accumulative Recursion Made Fun for Beginners</title>
  <journal>Comput. Lang. Syst. Struct.</journal>
  <volume>44</volume>
  <number>PB</number>
  <pages>181&#8211;197</pages>
  <doi>10.1016/j.cl.2015.08.001</doi>
 </citation>
 <citation type="book" key="Sedgewick">
  <author>Robert <surname>Sedgewick</surname></author>
  <author>Kevin <surname>Wayne</surname></author>
  <year>2007</year>
  <title>Introduction to Programming in Java: An Interdisciplinary Approach</title>
  <edition>1st</edition>
  <publisher>Addison-Wesley Publishing Company</publisher>
  <address>USA</address>
 </citation>
 <citation type="book" key="Silberschatz">
  <author>Abraham <surname>Silberschatz</surname></author>
  <author>Peter Baer <surname>Galvin</surname></author>
  <author>Greg <surname>Gagne</surname></author>
  <year>2010</year>
  <title>Operating System Concepts wit Java</title>
  <edition>eighth</edition>
  <publisher>John Wiley &#38; Sons</publisher>
 </citation>
 <citation type="book" key="Tymann">
  <author>Paul T. <surname>Tymann</surname></author>
  <author>G. Michael <surname>Schneider</surname></author>
  <year>2004</year>
  <title>Modern Software Development Using Java</title>
  <publisher>Thomson Brooks/Cole</publisher>
 </citation>
 <citation type="book" key="Venit">
  <author>Stewart <surname>Venit</surname></author>
  <author>Wayne <surname>Bishop</surname></author>
  <year>1985</year>
  <title>Elementary Linear Algebra</title>
  <edition>second</edition>
  <publisher>Prindle, Weber, and Schmidt</publisher>
 </citation>
 <citation type="article" key="Xi">
  <author>Hongwei <surname>Xi</surname></author>
  <year>2007</year>
  <title>Dependent ML An Approach to Practical Programming with Dependent Types</title>
  <journal>J. Funct. Program.</journal>
  <volume>17</volume>
  <number>2</number>
  <pages>215&#8211;286</pages>
  <doi>10.1017/S0956796806006216</doi>
 </citation>
</bibliography>
