<bibliography>
 <citation type="" key="BackboneJSURL">
  <title>Backbone.js: a JavaScript library with a RESTful JSON interface</title>
  <url>http://backbonejs.org/</url>
 </citation>
 <citation type="" key="PlayFrameworkURL">
  <title>Play: an open source MVC web application framework</title>
  <url>http://www.playframework.com/</url>
 </citation>
 <citation type="" key="TypescriptURL">
  <title>TypeScript: a language for application-scale JavaScript development, http://www.typescriptlang.org/</title>
  <url>http://www.typescriptlang.org/</url>
 </citation>
 <citation type="inproceedings" key="alur-fmcad13">
  <author>Rajeev <surname>Alur</surname></author>
  <author>Rastislav <surname>Bodik</surname></author>
  <author>Garvit <surname>Juniwal</surname></author>
  <author>Milo M. K. <surname>Martin</surname></author>
  <author>Mukund <surname>Raghothaman</surname></author>
  <author>Sanjit A. <surname>Seshia</surname></author>
  <author>Rishabh <surname>Singh</surname></author>
  <author>Armando <surname>Solar-Lezama</surname></author>
  <author>Emina <surname>Torlak</surname></author>
  <author>Abhishek <surname>Udupa</surname></author>
  <year>2013</year>
  <title>Syntax-Guided Synthesis</title>
  <booktitle>Proceedings of the IEEE International Conference on Formal Methods in Computer-Aided Design (FMCAD)</booktitle>
  <doi>10.1109/FMCAD.2013.6679385</doi>
 </citation>
 <citation type="article" key="back1997structured">
  <author>Ralph <surname>Back</surname></author>
  <author>Jim <surname>Grundy</surname></author>
  <author>Joakim <surname>Von Wright</surname></author>
  <year>1997</year>
  <title>Structured Calculational Proof</title>
  <journal>Formal Aspects of Computing</journal>
  <volume>9</volume>
  <number>5-6</number>
  <pages>469&#8211;483</pages>
  <doi>10.1007/BF01211456</doi>
 </citation>
 <citation type="inproceedings" key="backhouse2006exercises">
  <author>Roland <surname>Backhouse</surname></author>
  <author>Diethard <surname>Michaelis</surname></author>
  <year>2006</year>
  <title>Exercises in quantifier manipulation</title>
  <booktitle>Mathematics of program construction</booktitle>
  <organization>Springer</organization>
  <pages>69&#8211;81</pages>
  <doi>10.1007/11783596_7</doi>
 </citation>
 <citation type="techreport" key="bertot1997implementing">
  <author>Yves <surname>Bertot</surname></author>
  <author>Thomas <surname>Kleymann-Schreiber</surname></author>
  <author>Dilip <surname>Sequeira</surname></author>
  <year>1997</year>
  <title>Implementing Proof by Pointing without a Structure Editor</title>
  <type>Technical Report</type>
  <number>ECS-LFCS-97-368</number>
  <institution>University of Edinburgh</institution>
  <url>http://www.inria.fr/RRRT/RR-3286.html</url>
 </citation>
 <citation type="incollection" key="bornat1997jape">
  <author>Richard <surname>Bornat</surname></author>
  <author>Bernard <surname>Sufrin</surname></author>
  <year>1997</year>
  <title>Jape: A calculator for animating proof-on-paper</title>
  <booktitle>Automated Deduction—CADE-14</booktitle>
  <publisher>Springer</publisher>
  <pages>412&#8211;415</pages>
  <doi>10.1007/3-540-63104-6_41</doi>
 </citation>
 <citation type="inproceedings" key="butlerProgram1996">
  <author>Michael <surname>Butler</surname></author>
  <author>Thomas <surname>L&#x00e5;ngbacka</surname></author>
  <year>1996</year>
  <title>Program Derivation Using the Refinement Calculator</title>
  <booktitle>Theorem Proving in Higher Order Logics: 9th International Conference, volume 1125 of LNCS</booktitle>
  <publisher>Springer Verlag</publisher>
  <pages>93&#8211;108</pages>
  <doi>10.1007/BFb0105399</doi>
 </citation>
 <citation type="techreport" key="carringtonTool1996">
  <author>David <surname>Carrington</surname></author>
  <author>Ian <surname>Hayes</surname></author>
  <author>Ray <surname>Nickson</surname></author>
  <author>G. N. <surname>Watson</surname></author>
  <author>Jim <surname>Welsh</surname></author>
  <year>1996</year>
  <title>A Tool for Developing Correct Programs by Refinement</title>
  <type>Technical Report</type>
  <url>http://espace.library.uq.edu.au/view/UQ:10768</url>
 </citation>
 <citation type="incollection" key="ChaudhariDamaniIFM14">
  <author>Dipak L. <surname>Chaudhari</surname></author>
  <author>Om <surname>Damani</surname></author>
  <year>2014</year>
  <title>Automated Theorem Prover Assisted Program Calculations</title>
  <editor>Elvira <surname>Albert</surname></editor>
  <editor>Emil <surname>Sekerinski</surname></editor>
  <booktitle>Integrated Formal Methods</booktitle>
  <series>Lecture Notes in Computer Science</series>
  <publisher>Springer International Publishing</publisher>
  <pages>205&#8211;220</pages>
  <doi>10.1007/978-3-319-10181-1_13</doi>
 </citation>
 <citation type="incollection" key="ChaudhariDamaniITICSE15">
  <author>Dipak L. <surname>Chaudhari</surname></author>
  <author>Om <surname>Damani</surname></author>
  <year>2015</year>
  <title>Introducing Formal Methods via Program Derivation</title>
  <booktitle>Innovation and Technology in Computer Science Education, ITiCSE 15</booktitle>
 </citation>
 <citation type="incollection" key="cohen2009vcc">
  <author>Ernie <surname>Cohen</surname></author>
  <author>Markus <surname>Dahlweid</surname></author>
  <author>Mark <surname>Hillebrand</surname></author>
  <author>Dirk <surname>Leinenbach</surname></author>
  <author>Micha&#322;<surname>Moskal</surname></author>
  <author>Thomas <surname>Santen</surname></author>
  <author>Wolfram <surname>Schulte</surname></author>
  <author>Stephan <surname>Tobies</surname></author>
  <year>2009</year>
  <title>VCC: A Practical System for Verifying Concurrent C</title>
  <booktitle>Theorem Proving in Higher Order Logics</booktitle>
  <publisher>Springer</publisher>
  <doi>10.1007/978-3-642-03359-9_2</doi>
 </citation>
 <citation type="article" key="dijkstraGuarded1975">
  <author>Edsger W. <surname>Dijkstra</surname></author>
  <year>1975</year>
  <title>Guarded Commands, Nondeterminacy and Formal Derivation of Programs</title>
  <journal>Commun. ACM</journal>
  <volume>18</volume>
  <number>8</number>
  <pages>453&#8211;457</pages>
  <doi>10.1145/360933.360975</doi>
 </citation>
 <citation type="book" key="dijMethod1988">
  <author>Edsger W. <surname>Dijkstra</surname></author>
  <author>W. H. <surname>Feijen</surname></author>
  <year>1988</year>
  <title>A Method of Programming</title>
  <publisher>Addison-Wesley Longman Publishing Co., Inc.</publisher>
  <address>Boston, MA, USA</address>
 </citation>
 <citation type="inproceedings" key="filliatre:hal-00789533">
  <author>Jean-Christophe <surname>Filli&#226;tre</surname></author>
  <author>Andrei <surname>Paskevich</surname></author>
  <year>2013</year>
  <title>Why3 &#8211; Where Programs Meet Provers</title>
  <booktitle>ESOP'13 22nd European Symposium on Programming</booktitle>
  <series>LNCS</series>
  <volume>7792</volume>
  <publisher>Springer</publisher>
  <address>Rome, Italie</address>
  <doi>10.1007/978-3-642-37036-6_8</doi>
 </citation>
 <citation type="inproceedings" key="franssen1999cocktail">
  <author>Michael <surname>Franssen</surname></author>
  <year>1999</year>
  <title>Cocktail: A tool for deriving correct programs</title>
  <booktitle>Workshop on Automated Reasoning</booktitle>
 </citation>
 <citation type="techreport" key="VerifastJacobsPiessens08">
  <author>Bart <surname>Jacobs</surname></author>
  <author>Frank <surname>Piessens</surname></author>
  <year>2008</year>
  <title>The VeriFast Program Verifier</title>
  <type>Technical Report</type>
  <number>CW-520</number>
  <institution>Dept. of Computer Science, Katholieke Universiteit Leuven</institution>
  <url>http://www.cs.kuleuven.be/~bartj/verifast/verifast.pdf</url>
 </citation>
 <citation type="book" key="kalProg1990">
  <author>Anne <surname>Kaldewaij</surname></author>
  <year>1990</year>
  <title>Programming: The Derivation of Algorithms</title>
  <publisher>Prentice-Hall, Inc.</publisher>
  <address>NJ, USA</address>
 </citation>
 <citation type="inproceedings" key="leino2010dafny">
  <author>K. Rustan M. <surname>Leino</surname></author>
  <year>2010</year>
  <title>Dafny: An Automatic Program Verifier for Functional Correctness</title>
  <booktitle>Logic for Programming, Artificial Intelligence, and Reasoning</booktitle>
  <organization>Springer</organization>
  <doi>10.1007/978-3-642-17511-4_20</doi>
 </citation>
 <citation type="incollection" key="LeinoDirection">
  <author>K. Rustan M. <surname>Leino</surname></author>
  <year>2011</year>
  <title>Tools and Behavioral Abstraction: A Direction for Software Engineering</title>
  <editor>Sebastian <surname>Nanz</surname></editor>
  <booktitle>The Future of Software Engineering</booktitle>
  <publisher>Springer Berlin Heidelberg</publisher>
  <pages>115&#8211;124</pages>
  <doi>10.1007/978-3-642-15187-3_7</doi>
 </citation>
 <citation type="inproceedings" key="oliveira2004refine">
  <author>Marcel <surname>Oliveira</surname></author>
  <author>Manuela <surname>Xavier</surname></author>
  <author>Ana <surname>Cavalcanti</surname></author>
  <year>2004</year>
  <title>Refine and Gabriel: support for refinement and tactics</title>
  <booktitle>Software Engineering and Formal Methods, 2004. SEFM 2004. Proceedings of the Second International Conference on</booktitle>
  <organization>IEEE</organization>
  <pages>310&#8211;319</pages>
  <doi>10.1109/SEFM.2004.1347535</doi>
 </citation>
 <citation type="incollection" key="kiama">
  <author>Anthony M. <surname>Sloane</surname></author>
  <year>2011</year>
  <title>Lightweight Language Processing in Kiama</title>
  <editor>JoãoM. <surname>Fernandes</surname></editor>
  <editor>Ralf <surname>Lämmel</surname></editor>
  <editor>Joost <surname>Visser</surname></editor>
  <editor>João <surname>Saraiva</surname></editor>
  <booktitle>Generative and Transformational Techniques in Software Engineering III</booktitle>
  <series>Lecture Notes in Computer Science</series>
  <volume>6491</volume>
  <publisher>Springer Berlin Heidelberg</publisher>
  <pages>408&#8211;425</pages>
  <doi>10.1007/978-3-642-18023-1_12</doi>
 </citation>
 <citation type="incollection" key="SmithGenProg">
  <author>Douglas R. <surname>Smith</surname></author>
  <year>2008</year>
  <title>Generating Programs Plus Proofs by Refinement</title>
  <editor>Bertrand <surname>Meyer</surname></editor>
  <editor>Jim <surname>Woodcock</surname></editor>
  <booktitle>Verified Software: Theories, Tools, Experiments</booktitle>
  <series>Lecture Notes in Computer Science</series>
  <volume>4171</volume>
  <publisher>Springer Berlin Heidelberg</publisher>
  <pages>182&#8211;188</pages>
  <doi>10.1007/978-3-540-69149-5_20</doi>
 </citation>
</bibliography>
