Cyrine Zid : Une étude sur la compréhensibilité des constructions fonctionnelles en Python


mercredi 25 septembre 2024 - Séminaires

Le lien vers l’enregistrement se trouve ici (durée : 41 minutes).

Heure et date : le 25 septembre 2024 à 12h00
Lieu : PK-1150 et Zoom
Conférencière : Cyrine Zid (Polytechnique Montréal)
Titre : Une étude sur la compréhensibilité des constructions fonctionnelles en Python

Abstract :
L’utilisation des constructions fonctionnelles dans les langages de programmation tels que Python a été préconisée pour aider à écrire du code source plus concis, améliorer la parallélisation et réduire les effets de bord. Néanmoins, leur usage pourrait entraîner des problèmes de compréhensibilité. Dans ce séminaire, nous allons présenter comment mener une expérience contrôlée auprès de développeurs pour évaluer la compréhensibilité de certaines constructions fonctionnelles en Python — à savoir les lambdas, les compréhensions, et les fonctions map/reduce/filter — par rapport à leurs alternatives procédurales.

Biographie :
Cyrine Zid est chercheuse postdoctorale au Département de génie informatique et de génie logiciel à Polytechnique Montréal, Québec, Canada. Cyrine a obtenu son doctorat en 2024 sous la supervision du Prof. Giuliano Antoniol et du Prof. Foutse Khomh. Son parcours académique comprend également un Master en génie informatique de la même institution, ainsi qu’un diplôme d’ingénieur en informatique avec une spécialisation en systèmes embarqués de l’École Supérieure des Sciences Appliquées et de Management à Tunis.

Cyrine a publié des articles dans des conférences prestigieuses, telles que la conférence internationale IEEE/ACM sur le génie logiciel (ICSE) et la conférence internationale IEEE sur l’analyse, l’évolution et la réingénierie des logiciels (SANER). Ses domaines de recherche couvrent l’évolution des logiciels, l’ingénierie logicielle empirique et l’analyse des logiciels. Ses travaux récents se concentrent principalement sur l’analyse des constructions fonctionnelles en Python et leur impact sur la performance et la fiabilité des logiciels.