--- a/coursework/cw03.tex Fri Nov 22 20:27:30 2013 +0000
+++ b/coursework/cw03.tex Sat Nov 23 09:17:59 2013 +0000
@@ -64,8 +64,29 @@
\noindent
This coursework is worth 4\% and is due on 13 December at 16:00. You are asked to
-implement a compiler for the WHILE language. You are supposed to target the
-assembler language provided by the Jasmin for running on the Java Virtual Machine.
+implement a compiler for the WHILE language which targets the
+assembler language provided by the Jasmin. This assembler
+is available from
+
+\begin{center}
+\url{http://jasmin.sourceforge.net}
+\end{center}
+
+\noindent
+There is a user guide for Jasmin
+
+\begin{center}
+\url{http://jasmin.sourceforge.net/guide.html}
+\end{center}
+
+\noindent
+and also a description of some of the instructions that the JVM understands
+
+\begin{center}
+\url{http://jasmin.sourceforge.net/instructions.html}
+\end{center}
+
+\noindent
\noindent
@@ -78,7 +99,19 @@
\subsection*{Question 1 (marked with 1\%)}
+You need to lex and parse WHILE programs and submit the assembler
+instructions for the Fibonacci program and for the program you submitted
+in Coursework 2 in Question 3. The latter should be so modified that
+a user can input the upper bound on the console (in the original question
+it was fixed to 100).
+\subsection*{Question 2 (marked with 2\%)}
+
+Extend the syntax of you language so that it contains also \texttt{for}-loops, like
+
+\begin{center}
+\texttt{for} \;\textit{Id} \texttt{:=} \textit{AExp}\; \texttt{upto} \;\textit{AExp}\; \texttt{do} \textit{Block}
+\end{center}
\end{document}