From e029efcbd7368629803795c7c543d6e6e10e4c14 Mon Sep 17 00:00:00 2001 From: Mitchell Plamann Date: Mon, 13 Apr 2015 18:55:01 -0400 Subject: [PATCH] Added literature review first draft for the progress report --- progress_report/lit_review.tex | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100755 progress_report/lit_review.tex diff --git a/progress_report/lit_review.tex b/progress_report/lit_review.tex new file mode 100755 index 0000000..7f5ed3a --- /dev/null +++ b/progress_report/lit_review.tex @@ -0,0 +1,28 @@ +\section{Literature Review} +Since the start of our project, we have found multiple new information sources; +the following are the most important ones. +\begin{itemize} +\item Nodeunit documentation \\ +https://github.com/caolan/nodeunit \\ +% It might be better to put the URLs in the "References" section and add a [\ref{}] here +We are using nodeunit to test our virtual machine. +Since the c0 bytecode has many different opcodes that it uses, it is very easy +for mistakes in the virtual machine to go unnoticed. +To prevent this, we are using the nodeunit library to write unit tests for our +code. +This has already helped us to find and solve multiple bugs in the VM, and having +these unit tests will make sure that we can solve any bugs that occur as the +result of future changes in the code. +\item C0vm Assignment Handout \\ +https://www.cs.cmu.edu/~rjsimmon/15122-f14/prog/c0vm-writeup.pdf \\ +This document details how each opcode in the c0 bytecode language works, +as well as other important implementation details for the c0 virtual machine. +It has been an important reference while developing a JavaScript version +of the c0 virtual machine. +\end{itemize} +So far, the most important thing we have learned is that good unit tests are +vital for developing this sort of project. Without unit tests that verify +each opcode used by the virtual machine, many bugs would have gone unnoticed, +causing problems later down the line. If we only found these bugs by using +the frontend, they would have been much harder to debug, as there would have +been much more code to work through. \ No newline at end of file