Rosetta Code

Page d'accueil du site web : rosettacode.org

Rosetta Code est un site Internet de chrestomathie des langages informatiques 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]:

  • 1083 tâches à programmer (ou algorithmes)
  • 226 tâches à programmer (ou algorithmes) en mode "attente d'acceptation",
  • 813 langages informatiques,
  • 75 521 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 différente dans 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 structure

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é.

Langages

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âches

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 aussi

Références

  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 externes

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.