Associate Professor

I am a researcher at ENAC, in the Interactive Computing Lab (LII). My main research area is in programming languages for interactive systems. More specifically, I am proud to be one of the main designer and contributor of the Smala programming language, a language dedicated to the programming of interactive software.

Besides the technical challenge of building a new programming language, I have a high interest in the philosophical issues related to the field of computer science: what is a computer? What are the limits of the Turing machine paradigm? And what is the best model to think about an interactive oriented language?

Selected publications

  • 2019

    • Alice Martin, Mathieu Magnaudet. Engineering distributed systems: how efficient is a computational model? International Association for Computing and Philosophy – Annual Meeting, Jun 2019, Mexico, Mexico
    • Mathieu Magnaudet, Stéphane Conversy, Stéphane Chatty. A process-oriented approach to the science of human-computer interaction [Research Report] RR-ENAC-2019-01, ENAC. 2019
  • 2018

    • Mathieu Magnaudet, Stéphane Chatty, Stéphane Conversy, Sébastien Leriche, Célia Picard et al. Djnn/Smala: A Conceptual Framework and a Language for Interaction-Oriented Programming. Proceedings of the ACM on Human-Computer Interaction, Association for Computing Machinery (ACM), 2018, Proceedings of the ACM on Human-Computer Interaction, 2 (EICS), pp.1 - 27. ⟨10.1145/3229094⟩
  • 2016

    • Stéphane Chatty, Mathieu Magnaudet, Daniel Prun, Stéphane Conversy, Stéphanie Rey et al. Designing, developing and verifying interactive components iteratively with djnn. 8th European Congress on Embedded Real Time Software and Systems (ERTS 2016), Jan 2016, TOULOUSE, France
  • 2015

    • Mathieu Magnaudet, Stéphane Chatty. Quel cadre épistémologique pour une science de l'interaction homme-machine ? 27ème conférence francophone sur l'Interaction Homme-Machine., Oct 2015, Toulouse, France. pp.a9.⟨10.1145/2820619.2820628⟩
    • Stéphane Chatty, Mathieu Magnaudet, Daniel Prun. Verification of properties of interactive components from their executable code 7th ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS 2015), Jun 2015, Duisbourg, Germany. pp.276-285.⟨10.1145/2774225.2774848⟩


Djnn is first and foremost a conceptual model for describing and designing interactive systems. It is based on the concepts of process activation and coupling between processes. Djnn is now also a set of C++ libraries implementing this model for interactive software. On its side, Smala is a dedicated language that defines a syntax to describe a hierarchy of processes and couplings. With Smala comes a compiler that translates a Smala program into a C++ program using the Djnn libraries. Djnn and Smala are freely available on Github