Imperial College London

DrNarankerDulay

Faculty of EngineeringDepartment of Computing

Reader in Computing Science
 
 
 
//

Contact

 

+44 (0)20 7594 8288n.dulay Website

 
 
//

Location

 

562Huxley BuildingSouth Kensington Campus

//

Summary

 

Compilers - COMP50006

Aims

In this module you will have an opportunity to:

  • appreciate how a compiler for a high-level programming language works
  • understand how programming language design is influenced by compiler structure and how computer architecture is influenced by the needs of compiled programs
  • develop the technical skills needed for constructing practical compiler components, such as parsers, interpreters, semantic analysers, code generators and code optimisers   

Role

Course Leader

Distributed Algorithms - COMP60009

Aims

The module will cover the key concepts, problems and results in distributed algorithms. It will provide an introduction on how to model and reason about distributed algorithms and practical experience of programming them. The module builds on (i) OS concepts including processes, threads and scheduling, (ii) concurrency concepts including synchronisation, deadlock, race conditions, (iii) discrete maths including sets, logic and logical reasoning, (iv) functional programming.

Role

Course Leader

Distributed Algorithms - COMP96027

Aims

The module will cover the key concepts, problems and results in distributed algorithms. It will provide an introduction on how to model and reason about distributed algorithms and practical experience of programming them. The module builds on (i) OS concepts including processes, threads and scheduling, (ii) concurrency concepts including synchronisation, deadlock, race conditions, (iii) discrete maths including sets, logic and logical reasoning, (iv) functional programming.

Role

Course Leader

Privacy Engineering - COMP97012

Aims

This module will teach you about state-of-the-art privacy-preserving mechanisms and systems and how to attack them. We will then review and discuss improvements and trade-offs.

First, we will review anonymisation strategies for small and big data datasets and their limits. We will then do the same for query-based systems before learning and applying a theory called Differential Privacy. Finally, throughout the module, we will read and discuss research papers on attack and defenses.

Role

Course Leader