エジプトのロゼッタで発見された「ロゼッタストーン」は同じ内容が3種類の異なる文字で書かれていることから、古代言語を理解するための鍵となりました。
本日紹介する「RosettaGit」はそのプログラミング言語版を目指し開発が進められているWebサイトです。現在13のタスク(4392の下書き)、748のプログラミング言語をカバーし、最終的にはあらゆるタスクに関する全てのプログラミング言語の解法を提供することを目的としているそうです。
Rosetta Codeから2019年10月にforkされたサイトでMediaWikiではなくGitHubリポジトリでホストされていることから、高機能のエディタの使用や、継続的な統合と配布、開発のシンプル化、ロード時間の高速化などなどが可能になるメリットがあると説明されています。
さまざまなタスクをさまざまな言語で
現在RosettaGitで閲覧できるタスク(問題)の数は13種類とそれほど多くありません。
しかし例えばさまざまなプログラミング言語でメッセージを表示する「Hello world!」タスクには膨大なプログラミング言語のサンプルコードが掲載されています。
▲左側のペインの「Contents」でプログラミング言語を選びます。
▲なかにはPythonのようにいくつかの異なるコードが掲載さえているものもあります。
このほかもう少し実践的な例としてパズルゲームのコード例が掲載されている「2048」や、ファイル入出力の方法を知ることができる「File input and output」などのタスクが存在します。
まとめ
RosettaGitではさまざまなタスクをさまざまなプログラミング言語を用いて解くためのコードが掲載されています。プログラミングになれてくるとやりたいことのイメージが分かっているのに、言語特有の記法が分からないということが多々あります。そのような場合に便利なサイトといえそうです。