skip to content

Department of Computer Science and Technology

  • Research Staff

Tobias Kohn studies optimisations in Python, particularly in the context of scientific applications. He investigates the possibilities for, and limitations of, performance improvements of both Python as a language, as well as its current implementations. The focus of his research is on static analysis, program transformations and virtual machines.  Additionally, he also works in the field of computer science education and is an active member of ACM's special interest group SIGCSE.


Tobias Kohn received his MSc in Mathematics from ETH Zurich und has taught at Swiss grammar/high schools for several years before obtaining a PhD in Computer Science, also from ETH Zurich.  He subsequently joined a machine learning group at the University of Oxford and is now a member of the Computer Architecture group at the University of Cambridge.  Since March 2020 he is also a Research Fellow at Hughes Hall College.


  • , , , , : Dynamic pattern matching with Python. DLS
  • , , , , , , : Problem Solving and Creativity: Complementing Programming Education with Robotics. ITiCSE
  • , : Tell Me What's Wrong: A Python IDE with Error Messages. SIGCSE
  • , , , , , : LF-PPL: A Low-Level First Order Probabilistic Programming Language for Non-Differentiable Models. AISTATS
  • : The Error Behind The Message: Finding the Cause of Error Messages in Python. SIGCSE
  • , : Teaching Programming and Algorithmic Complexity with Tangible Machines. ISSEP
  • : Variable Evaluation: an Exploration of Novice Programmers' Understanding and Common Misconceptions. SIGCSE

Elements publications

Conference proceedings


  • Zhou, Y., Gram-Hansen, BJ., Kohn, T., Rainforth, T., Yang, H. and Wood, F., 2020. LF-PPL: A low-level first order probabilistic programming language for non-differentiable models AISTATS 2019 - 22nd International Conference on Artificial Intelligence and Statistics,
  • Kohn, T. and Manaris, B., 2020. Tell me what'swrong: A python ide with error messages Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE,
    Doi: 10.1145/3328778.3366920
  • Komm, D., Regez, A., Hauser, U., Gassner, M., Lütscher, P., Puchegger, R. and Kohn, T., 2020. Problem Solving and Creativity: Complementing Programming Education with Robotics Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE,
    Doi: 10.1145/3341525.3387420
  • Kohn, T., Van Rossum, G., Bucher, GB., Talin, and Levkivskyi, I., 2020. Dynamic pattern matching with Python DLS 2020 - Proceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages - Co-located with SPLASH 2020,
    Doi: 10.1145/3426422.3426983
  • 2019

  • Kohn, T., 2019. The error behind the message: Finding the cause of error messages in python SIGCSE 2019 - Proceedings of the 50th ACM Technical Symposium on Computer Science Education,
    Doi: 10.1145/3287324.3287381
  • 2018

  • Kohn, T. and Komm, D., 2018. Teaching programming and algorithmic complexity with tangible machines Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), v. 11169 LNCS
    Doi: 10.1007/978-3-030-02750-6_6
  • Journal articles


  • Kohn, T. and Komm, D., 2019. Denn sie wissen nicht, was sie programmieren Informatik-Spektrum,
  • Contact Details

    Office phone: 
    (01223) 3-34630