Rosetta Code (original) (raw)
From Wikipedia, the free encyclopedia
Wiki-based programming chrestomathy
This article is about a website. For code written for the protein-folding system, see Rosetta@home.
Rosetta Code
![]() |
|
---|---|
Available in | English |
URL | www.rosettacode.org |
Launched | January 1, 2007; 18 years ago (2007-01-01) |
Current status | Online |
Content license | GFDL |
Written in | PHP, MediaWiki |
Rosetta Code is a wiki-based programming chrestomathy website with implementations of common algorithms and solutions to various programming problems in many different programming languages.[1][2] It is named for the Rosetta Stone, which has the same text inscribed on it in three languages, and thus allowed Egyptian hieroglyphs to be deciphered for the first time.[3]
Rosetta Code was created in 2007 by Michael Mol.[3] The site's content is licensed under the GNU Free Documentation License 1.2, though some components may be dual-licensed under more permissive terms.[4]
The Rosetta Code web repository illustrates how desired functionality is implemented very differently in various programming paradigms,[5][6] and how "the same" task is accomplished in different programming languages.[7]
As of 22 February 2024[update], Rosetta Code has:[8]
- 1,266 computer programming tasks (or problems)
- 404 additional draft programming tasks
- 933 computer programming languages that are used to solve tasks
In August 2022, Rosetta Code migrated from independent hosting to Miraheze.
The Rosetta Code site is organized as a browsable cross-section of tasks (specific programming problems or considerations) and computer programming languages.[2] A task's page displays visitor-contributed solutions in various computer languages, allowing a viewer to compare each language's approach to the task's stated problem.
Task pages are included in per-language listings based on the languages of provided solutions; a task with a solution in the C programming language will appear in the listing for C. If the same task has a solution in Ruby, the task will appear in the listing for Ruby as well.
Some of the computer programming languages found on Rosetta Code (which have Wikipedia descriptions) include: [9]
- Ada
- ALGOL 60
- ALGOL 68
- ALGOL W
- APL
- AWK
- AutoHotKey
- BASIC (58 variants)
- C
- C#
- C++
- Ceylon
- Clojure
- COBOL
- Common Lisp
- D
- Delphi
- Erlang
- F#
- Factor
- Forth
- Fortran
- Elixir
- Go
- Apache Groovy
- Haskell
- Icon
- J
- Java
- JavaScript
- Julia
- Kotlin
- Lua
- Maple
- Mathematica
- MATLAB
- Nim
- OCaml
- Octave
- ooRexx
- PARI/GP
- Pascal
- Perl
- PHP
- Picolisp
- PL/I
- PowerShell
- Prolog
- PureBasic
- Python
- R
- Racket
- Raku (Perl 6)
- Red
- REXX
- Ruby
- Rust
- Scala
- Scheme
- Seed7
- SequenceL
- Swift
- Tcl
- Unicon
- V (Vlang)
- XPL0
A complete list of the computer programming languages that have examples (entries/solutions to the Rosetta Code tasks) is available.[10]
Some of the tasks found on Rosetta Code include:[11]
"99 Bottles of Beer" (song)
Cyclic redundancy check (CRC-32)
Death Star (draw)
Galton box (bean box) animation
Greatest common divisor (GCD)
Hello world program Hello world/Text
Least common multiple (LCM)
Mandelbrot set (draw)
Pascal's triangle (draw)
Prime numbers (102 tasks)
Rock-paper-scissors (play)
Roman numerals (encode/decode)
Rot13—a simple letter substitution cipher
Sierpinski triangle (draw)
Sorting algorithms (41)
Sudoku (solve)
Tic-tac-toe (noughts and crosses)
Tower of Hanoi (solve)
Ulam spiral (draw)
Xiaolin Wu's line algorithm (draw)
Zebra Puzzle or Einstein riddle
- ^ Ralf Lämmel. "Software chrestomathies". doi:10.1016/j.scico.2013.11.014. 2013.
- ^ a b Nanz, Sebastian; Furia, Carlo A. (2015). A Comparative Study of Programming Languages in Rosetta Code. pp. 778–788. arXiv:1409.0252. doi:10.1109/ICSE.2015.90. ISBN 978-1-4799-1934-5. S2CID 2570311.
- ^ a b "Rosetta Code:About - Rosetta Code". www.rosettacode.org. 8 August 2010.
- ^ "Rosetta Code:Copyrights". 24 January 2010. Retrieved 2010-12-19.
- ^ Neil Walkinshaw. Chapter One: "Reverse-Engineering Software Behavior". "Advances in Computers". 2013. p. 14.
- ^ Geoff Cox. "Speaking Code: Coding as Aesthetic and Political Expression". MIT Press, 2013. p. 6.
- ^ Nick Montfort "No Code: Null Programs". 2013. p. 10.
- ^ "Welcome to Rosetta Code". Retrieved 2007-01-07.
- ^ "Most linked-to categories". Retrieved 2024-02-22.
- ^ "Rosetta Code/Languages/Full list". rosettacode.org. 4 March 2024.
- ^ "Pages with the most categories". Retrieved 2018-10-11.