bsc-projects-18.html
changeset 541 553888c9c13f
parent 540 6633568ebc11
child 543 882bf2776a6c
equal deleted inserted replaced
540:6633568ebc11 541:553888c9c13f
   171   </p>
   171   </p>
   172 
   172 
   173 <li> <H4>[CU5] Grammars and Derivative-Based Parsing Algorithms</H4>
   173 <li> <H4>[CU5] Grammars and Derivative-Based Parsing Algorithms</H4>
   174 
   174 
   175 <B>Literature:</B> <A HREF="https://www.cl.cam.ac.uk/~jdy22/papers/a-typed-algebraic-approach-to-parsing.pdf">paper</A>  
   175 <B>Literature:</B> <A HREF="https://www.cl.cam.ac.uk/~jdy22/papers/a-typed-algebraic-approach-to-parsing.pdf">paper</A>  
   176   
   176 
       
   177 <li> <H4>[CU6] Webassembly Interpreter / Compiler</H4>
       
   178 
       
   179 <A HREF="https://github.com/WebAssembly/spec/tree/master/interpreter">Reference Interpreter</A>  
       
   180 
   177 <li> <H4>[CU2] A Compiler for a small Programming Language</H4>
   181 <li> <H4>[CU2] A Compiler for a small Programming Language</H4>
   178 
   182 
   179   <p>
   183   <p>
   180   <b>Description:</b> 
   184   <b>Description:</b> 
   181   Compilers translate high-level programs that humans can read and write into
   185   Compilers translate high-level programs that humans can read and write into
   473         <source src="https://nms.kcl.ac.uk/christian.urban/h3.mp4">
   477         <source src="https://nms.kcl.ac.uk/christian.urban/h3.mp4">
   474           Your browser does not support the video tag.
   478           Your browser does not support the video tag.
   475       </video>
   479       </video>
   476     </center>  
   480     </center>  
   477 
   481 
   478 <li> <H4>[CU6] An Infrastructure for Displaying and Animating Code in a Web-Browser</H4>
   482 <li> <H4>[CU7] An Infrastructure for Displaying and Animating Code in a Web-Browser</H4>
   479   
   483   
   480 <p>
   484 <p>
   481   <B>Description:</B>
   485   <B>Description:</B>
   482   The project aim is to implement an infrastructure for displaying and
   486   The project aim is to implement an infrastructure for displaying and
   483   animating code in a web-browser. The infrastructure should be agnostic
   487   animating code in a web-browser. The infrastructure should be agnostic
   501   Good skills in lexing and language parsing, as well as being fluent with web programming (for
   505   Good skills in lexing and language parsing, as well as being fluent with web programming (for
   502   example JavaScript).
   506   example JavaScript).
   503   </p>
   507   </p>
   504 
   508 
   505 
   509 
   506 <li> <H4>[CU7] Proving the Correctness of Programs</H4>
   510 <li> <H4>[CU8] Proving the Correctness of Programs</H4>
   507 
   511 
   508  <p>
   512  <p>
   509  I am one of the main developers of the interactive theorem prover
   513  I am one of the main developers of the interactive theorem prover
   510  <A HREF="http://isabelle.in.tum.de">Isabelle</A>. This theorem prover
   514  <A HREF="http://isabelle.in.tum.de">Isabelle</A>. This theorem prover
   511  has been used to establish the correctness of some quite large
   515  has been used to establish the correctness of some quite large
   535   <p>
   539   <p>
   536   <B>Skills:</B> 
   540   <B>Skills:</B> 
   537   This project is for a very good student with a knack for theoretical things and formal reasoning.
   541   This project is for a very good student with a knack for theoretical things and formal reasoning.
   538   </p>
   542   </p>
   539 
   543 
   540 <li> <H4>[CU8] Anything Security Related that is Interesting</H4>
   544 <li> <H4>[CU9] Anything Security Related that is Interesting</H4>
   541   
   545   
   542 <p>
   546 <p>
   543 If you have your own project that is related to security (must be
   547 If you have your own project that is related to security (must be
   544 something interesting), please propose it. We can then have a look
   548 something interesting), please propose it. We can then have a look
   545 whether it would be suitable for a project.
   549 whether it would be suitable for a project.
   546 </p>
   550 </p>
   547 
   551 
   548 <li> <H4>[CU8] Anything Interesting in the Areas</H4>
   552 <li> <H4>[CU10] Anything Interesting in the Areas</H4>
   549   
   553   
   550 <ul>
   554 <ul>
   551 <li><A HREF="http://elm-lang.org">Elm</A> (a reactive functional language for animating webpages; have a look at the cool examples, or <A HREF="http://pragmaticstudio.com/blog/2014/12/19/getting-started-with-elm">here</A> for an introduction)
   555 <li><A HREF="http://elm-lang.org">Elm</A> (a reactive functional language for animating webpages; have a look at the cool examples, or <A HREF="http://pragmaticstudio.com/blog/2014/12/19/getting-started-with-elm">here</A> for an introduction)
   552 <li><A HREF="http://www.smlserver.org/smltojs/">SMLtoJS</A> (a ML compiler to JavaScript; or anything else related to
   556 <li><A HREF="http://www.smlserver.org/smltojs/">SMLtoJS</A> (a ML compiler to JavaScript; or anything else related to
   553   sane languages that compile to JavaScript)
   557   sane languages that compile to JavaScript)