• Português
  • 简体中文
  • 繁體中文
  • Deutsch
  • English
  • Español
  • Français
  • 日本語
  • Latviešu
  • Lietuvių
  • Русский

La programmation fonctionnelle agile: The lambda Game

Full name

Job
email
Company
City (Country)
Time
Type of Conference
Level

Description

La question de la qualité du code est au coeur de l'eXtreme Programming: la qualité est une donnée non-négociable du logiciel développé et toute les pratiques XP sont articulées autour de cette exigence, en sacrifiant les déchets qui constituent habituellement 80% de l'effort dans les autres modes de développement. La question peut alors être posé de savoir si toutes les technologies se valent dans ce contexte, si tous les paradigmes de programmation sont égaux devant l'agilité. Nous pensons que la réponse est "Certains sont peut-être plus égaux que d'autres" et que la programmation fonctionnelle qui connait depuis quelques temps un regain d'intérêt avec le "succès" de plate-formes de développement telles que Clojure, F#, Scala voire même Ruby et Python, a des avantages non négligeables à faire valoir. Plus précisément, nous pensons que la programmation fonctionnelle aide à produire des logiciels plus compactes, plus testables, plus modulaires. Dans cet atelier, nous proposons d'explorer le paradigme fonctionnel au moyen d'un jeu de plateau appelé le Lambda-game. A l'aide d'hexagones magnétiques, les joueurs construisent des expressions qui sont évalués par un "interpréteur" (ie. les animateurs de la conférence) selon des règles simples afin de permettre à un robot de se déplacer sur Mars pour atteindre un objectif. Sous une forme simple et ludique, le jeu permet d'explorer des concepts centraux de la programmation fonctionnelle pure : la récursion, la transparence référentielle, la construction d'abstractions puissantes, l'immutabilité des valeurs et les données persistantes,... L'atelier se clôt par une discussion sur les principes exposés et la manière de les mettre en oeuvre au quotidien.


Tags: