USI 2008 Session

Technologies

My language is bigger than yours

fr

Le paradigme de la programmation fonctionnelle - tout est fonction - est historiquement le plus ancien modèle de programmation. Il a connu son heure de gloire dans les années 60-70 avec la famille de langages Lisp et Scheme et les promesses de l'intelligence artificielle, au point que certains ont envisagé de construire des machines Lisp. Après une longue éclipse, pendant laquelle ces langages, devenus les jouets favoris des universitaires et théoriciens, ont éclos en une multitude de dialectes, une nouvelle génération connaît un renouveau - limité certes, mais perceptible - de popularité. Haskell, OCaml, Scala, Erlang: ces noms sont désormais connus au-delà des symposiums académiques. Depuis longtemps fascinés par l'expressivité de ces langages, nous cherchons à comprendre comment articuler les pratiques XP - TDD, Binômage, remaniement du code, itérations - et le paradigme fonctionnel; à identifier les points faibles et forts de ces langages par rapport au paradigme dominant - l'objet - dans le cadre de processus de développement agiles; à convaincre le plus grand nombre, enfin, de la pertinence de modifier nos modes de pensée dans le sens où ces langages nous y invitent. Cette session pratique met en parallèle les deux paradigmes au travers du développement - dirigé par les tests - de deux solutions, fonctionnellement identiques (ie. répondant aux mêmes tests de recette). L'accent sera mis sur l'identification de motifs de conception fonctionnels: fonctions d'ordre supérieur, types abstraits de données, pliage/dépliage de structures, monades... Le langage fonctionnel choisi sera Haskell, et le langage objet Java. Aucune connaissance préliminaire desdits langages n'est à priori nécessaire.

Please wait...

Mark: 0/5 (0 vote(s))
397 visits

Be the first to write a comment

Back to program

Session tags

> View all tags

Suggestions