PageRenderTime 48ms CodeModel.GetById 46ms app.highlight 0ms RepoModel.GetById 1ms app.codeStats 0ms

LaTeX | 21 lines | 17 code | 4 blank | 0 comment | 0 complexity | 83de19114504207339d7050e46fd82fa MD5 | raw file
 3\begin{tabular}{r l}
 4Name and College: & Henry Hughes, Jesus College\\
 5Project Title: & Functionally Reactive Web Applications\\
 6Examination and Year: & Computer Science Tripos 2011\\
 7Word Count: & Approx. 9,400 words\\
 8Project Originator: & Dr A. Madhavapeddy\\
 9Project Supervisor: & Dr A. Madhavapeddy\\
13\section*{Original Aims}
14The purpose of this project is investigate the usefulness of Functional Reactive Programming (FRP) when designing and implementing web applications. It will focus on just one method of FRP, using a modified version of the OCaml compiler called \emph{ocamljs} and the library \emph{froc} which is used for reactive programming in OCaml. The project will look how at the speed of applications produced using FRP compare to JavaScript implementations. It will also look at how the language properties of OCaml help the developer develop code which will be type safe and produce the correct output. % 94 words
16\section*{Work Completed}
17The project implemented three applications using \emph{ocamljs} and \emph{froc}. The first was a tool for rendering log files for threaded programs in a visual format. \emph{froc} was used to redraw the user interface elements whenever the state of the application changed. The second rendered a graph of data with two variables which varied over time. As the time viewed changed, \emph{froc} would update the values for the data points and then reposition them. The final application was a heat map of energy usage in a building. \emph{froc} sets the appropriate colour for the rooms as the time value changed. % 95 words
20\section*{Project Difficulties}