Rosetta Code est un site Internet de chrestomathie des langages informatique qui implémente des algorithmes, des tâches à réaliser et divers problèmes de programmation dans de nombreux langages de programmation[1]. À l'instar de la Pierre de Rosette qui présente sur une face unique un même texte écrit dans trois langues différentes, une page du site Rosetta Code présente un même algorithme, par exemple le crible d'Eratosthène, est écrit dans une centaine de langages informatique différents[2]. Le site est codé en wiki. Il a été créé en 2007 par Michael Mol.

À la date du , les pages de Rosetta Code référencent[3]:

  • 914 tâches à programmer (ou algorithmes)
  • 216 tâches à programmer (ou algorithmes) en mode "attente d'acceptation",
  • 684 langages informatique,
  • 61 653 exemples de code d'une tâche dans un langage de programmation.

Le contenu du site est sous licence de documentation libre GNU 1.2, même si certains composants peuvent faire l'objet d'une double licence sous des conditions plus permissives[4].

Le site Rosetta Code illustre comment des fonctionnalités énoncées sont implémentées de manière très différente dans divers les divers langages de programmation[5],[6], et comment "la même" tâche est accomplie dans différents langages de programmation[7].

Données et structureModifier

Le site Rosetta Code est organisé en une section transversale de tâches à réaliser (algorithmes ou problèmes informatique) versus une autre section celle des langages de programmation. La page d'un algorithme affiche toutes les solutions proposées par les contributeurs dans divers langages informatiques. Cela permet au visiteur, au programmeur, de comparer l’approche de chaque langage au problème énoncé.

LangagesModifier

Ce qui suit représente un petit échantillon des 743 langages de programmation référencés sur Rosetta Code[8]. Ne sont cités que les langages présents sur Wikipédia:

(Pour voir une liste complète des langages informatiques contenant des exemples, voir : Rosetta Code computer langage popularity list.

TâchesModifier

Voici un petit extrait des 961 tâches présentes dans Rosetta Code[9]. Ne sont cités que des algorithmes présents sur Wikipédia.

Voir aussiModifier

RéférencesModifier

  1. Ralf Lämmel, "Software chrestomathies", janvier 2015. Publié dans "Science of Computer Programming", volume 97, pages 98-104
  2. « Copyrights de Rosetta Code »
  3. (en) « Welcome to Rosetta Code »
  4. (en) « Rosetta Code - Copyrights »
  5. Neil Walkinshaw. Chapter One: "Reverse-Engineering Software Behavior". "Advances in Computers". 2013. p. 14.
  6. Geoff Cox. "Speaking Code: Coding as Aesthetic and Political Expression". MIT Press, 2013. p. 6.
  7. Nick Montfort "No Code: Null Programs". 2013. p. 10.
  8. (en) « Rosetta Code - Liste des langages de programmation »
  9. (en) « Rosetta Code - Liste des tâches à réaliser »

Liens externesModifier