「Hello World!」の進化


226

このコンテストは正式に終了し、勝者はjimmy23013です。おめでとうございます!

課題はHello World!、標準出力に出力するプログラムを作成することです。キャッチは、あなたのプログラムはあなたの前に提出された回答のプログラムから7以下のレーベンシュタイン距離を持っている必要があるということです。

これの仕組み

以下に、Pythonを使用した最初の回答を既に提出しましたprint("Hello World!")

次に回答する人はprint("Hello World!")、最大7文字の単一文字の挿入、削除、または置換を使用して文字列を変更する必要があります。これにより、これまで使用されていない言語(この場合はPythonのみ)で実行された場合でも、出力はそのままHello World!です。

たとえば、2番目の回答者は、1つの置換(r -> u)、2つの削除(in)、1つの挿入(s)を使用して、Rubyで実行したときputs("Hello World!")に出力さHello World!れる文字列を作成します。

答える3番目の人は、新しい言語で同じことをしなければなりませんが、2番目の人の答えのプログラム(例puts("Hello World!"):)を出発点として使用します。4番目の回答は、3番目の回答に関連するようになります。

これは、最後の回答のプログラムを7文字だけ変更するだけで実行できる新しい言語がないため、全員が行き詰まるまで続きます。共同の目標は、これを維持できる時間を確認することです。そのため、不明瞭または不当なキャラクターの編集を行わないようにしてください(ただし、これは必須ではありません)。

書式設定

投稿を次のようにフォーマットしてください:

#Answer N - [language]

    [code]

[notes, explanation, observations, whatever]

Nは回答番号です(N = 1、2、3、...)。

どの正確な文字が変更されたかを伝える必要はありません。レーベンシュタイン距離が0〜7であることを確認してください。

ルール

この課題について理解する重要なことは、一度に答えることができるのは1人だけであり、それぞれの答えはその前の答えに依存するということです。

同じNで2つの回答が存在することはありません。2人がNに対して同時に回答した場合、後で回答した(数秒の差があっても)回答を丁寧に削除する必要があります。

さらに...

  • ユーザーは、8時間ごとに1つの回答のみを提出できます。すなわち、あなたの答えはそれぞれ少なくとも8時間離れていなければなりません。(これは、ユーザーが常に質問を見て、できる限り回答するのを防ぐためです。)
  • ユーザーは、2つの回答を連続して送信することはできません。(たとえば、回答1を提出したので、回答2はできませんが、3はできます。)
  • 各回答は異なるプログラミング言語である必要があります。
    • 同じ言語の異なるバージョンは同じ言語としてカウントされます。
    • 伝統的に2つの異なる名前で呼び出される場合、言語は別個のものとしてカウントされます。(ここにはいくつかのあいまいさがありますが、コンテストを台無しにしないでください。)
  • タブ、改行、および印刷可能なASCIIのみを使用できます。(改行は1文字としてカウントされます。)
  • 出力はHello World!他の文字のみであるべきです(先頭/末尾の改行は問題ではありません)。
  • 言語にstdoutがない場合は、テキストをすばやく出力するために一般的に使用されているもの(たとえば、console.logまたはalertJavaScript)を使用します。

回答が有効であることを確認してください。チェーンに5つの答えが分かれていることに気付きたくありません。無効な回答はすぐに修正するか、追加の回答がある前に削除する必要があります。

どうしても必要な場合を除き、回答を編集しないでください。

得点

問題が解決したら、最も有効な回答を送信したユーザーが勝ちます。ネクタイは、累積投票数が最も多いユーザーに送られます。

リーダーボード:(期限切れ)

(ユーザーには少なくとも2つの有効な回答が必要です)

11回答

7回答

6回答

5回答

4回答

3つの答え

2回答

これまでに使用された言語:

  1. Python
  2. CJam
  3. PHP
  4. パイス
  5. Perl
  6. Befunge 98
  7. バッシュ
  8. ニムロッド
  9. ルビー
  10. GNU dc
  11. Golfscript
  12. Mathematica
  13. R
  14. ルア
  15. セージ
  16. ジュリア
  17. サイラブ
  18. JavaScript
  19. VHDL
  20. ハイパートーク
  21. ハスケル
  22. LOLCODE
  23. APL
  24. M30W
  25. スタタ
  26. TI-BASIC(NSpire)
  27. ActionScript 2
  28. J
  29. パワーシェル
  30. K
  31. Visual FoxPro
  32. VBA
  33. 拡張BFタイプIII
  34. Zsh
  35. ダッシュ
  36. クロージュア
  37. NetLogo
  38. グルーヴィー
  39. CoffeeScript
  40. クリッパー
  41. ベーシック
  42. 魚(シェル)
  43. GNUオクターブ
  44. TCL
  45. E
  46. newLisp
  47. 舌足らずの発音
  48. SMT-LIBv2
  49. ラケット
  50. バッシュ
  51. tcsh
  52. AppleScript
  53. マウス
  54. ピクシー
  55. F#
  56. ファルコン
  57. バーレスク
  58. HTML
  59. SGML
  60. M4
  61. おたふく風邪
  62. TeX
  63. 前方へ
  64. サーモン
  65. チューリング
  66. 紀元前
  67. ベターレイヴ
  68. スキーム
  69. Emacs Lisp
  70. ロゴ
  71. AutoLISP
  72. ///
  73. レボル
  74. もみじ
  75. FreeBASIC
  76. Vimscript
  77. ksh
  78. ハック
  79. mIRC
  80. バッチ
  81. 作る
  82. マークダウン
  83. sh
  84. GDB
  85. csh
  86. HQ9 +-
  87. 追記
  88. Matlab
  89. オズ
  90. カシオベーシック
  91. VBScript
  92. QBasic
  93. 処理
  94. C
  95. 錆0.13
  96. ダーツ
  97. カフェイン
  98. アルゴイド
  99. AMPL
  100. アロア
  101. Forobj
  102. T-SQL
  103. LiveCode
  104. 陶酔
  105. SpeakEasy
  106. MediaWiki
  107. SmallBASIC
  108. REXX
  109. SQLite
  110. TPP
  111. Geom ++
  112. SQL(postgres)
  113. itflabtijtslwi
  114. RegXy
  115. Opal.rb
  116. リス
  117. ポーン
  118. スカラ
  119. レブム
  120. ブー
  121. パリ/ GP
  122. 迅速
  123. BeanShell
  124. ヴァラ
  125. パイク
  126. スネイド
  127. AWK
  128. AngelScript
  129. ゴス
  130. V
  131. ALAGUF
  132. 偽物
  133. 燃えるようなサンダー
  134. CachéObjectScript
  135. フクロウ
  136. 枢機卿
  137. パーサー
  138. グリン
  139. 子猫
  140. TwoDucks
  141. 漸近線
  142. ネコ
  143. IDL
  144. 小さな
  145. WTFZOMFG
  146. イオ
  147. MuPAD
  148. Java
  149. オニキス
  150. JBoss
  151. S +
  152. ヘキシッシュ
  153. ヤシュ
  154. ありえない
  155. 目覚める
  156. がき
  157. busybox組み込みシェル
  158. ガンマプレックス
  159. KTurtle
  160. AGOL 68
  161. アリス
  162. SML / NJ
  163. OCaml
  164. CDuce
  165. 負荷の下で
  166. シンプレックスv.0.6
  167. ミンコルン0.9
  168. Fexl 7.0.3
  169. ヨルフ
  170. ヴィツィ
  171. Y
  172. 網膜
  173. コードネームドラゴン
  174. 真剣に
  175. Reng v.3.3
  176. ファジーオクトワカモレ

(これらのリストが間違っていたり、古くなっている場合は、自由に編集してください。)

この質問は、最も古い順に並べ替えたときに最も効果的です。

注:これは、各回答が最後の課題に依存し、難易度が高くなる新しいチャレンジタイプの試用版の質問です。この質問のためのチャットルームまたはメタで私たち議論してください。


61
ここでは「古い順に並べ替える」が便利です。
xnor 14年


5
@Mew HQ9 +は間違ったメッセージを出力します。しかし、これは... esolangs.org/wiki/Huby
Sp3000

17
多分これは興味深いものになることができます:migl.io/projects/hw。このリストは自動的に回答を表示し、その寿命を表示します
マイケルM. 14年

6
私は本当に350の以上の回答通知を使用することができます原因@gerrit ...
カルバンの趣味

回答:


29

回答85- GDB(GNUデバッガー)

#[]([.]c;main()&alert"  "
    echo Hello World!
#[;]:;#bye;dnl</vsh>

これはプログラミング言語としても資格があると思います。偶数ifおよびwhileコマンドあります

echo GDBのもう1つの組み込みコマンドです。

このコードを実行するには:

gdb --batch -x file

距離:回答84から7 。


回答を修正してください。85は無効な回答でした(言語が以前に使用されたことに気づきませんでした)。削除しました。
Nit 14年

GDBへのリンクはありますか?
オプティマイザー14年

1
@Optimizer gnu.org/software/gdb Gnuデバッガー。
jimmy23013 14年

NetbeansではなくEclipseでjavaプロジェクトを実行するようなものです
オプティマイザー

3
この答えは結構です。GDBには、特定のデバッグコマンドを実行するために使用されるコマンド言語があります。これを行うには、バッチモードでGDBを実行し、を使用してコマンドファイルを指定します--batch -x <file>。これは合法的な言語です。こちらをご覧ください:sourceware.org/gdb/onlinedocs/gdb/Mode-Options.html-batch flag

50

回答1-Python

print("Hello World!")

これが変形する可能性のある数十の言語がなければなりません。


113
これはなぜ投票されているのに質問ではないのですか?私はあなたに質問を書くのが難しかったことを保証します;)
カルビンの趣味14年

91
コメントが回答よりも多く投票されるのはなぜですか?
tomsmeding

23
@ Calvin'sHobbies回答upvotesはもっと価値があります、あなたは文句を言うべきではありません:-)
Angew 14年

30
@tomあなたのコメントがこの回答よりも多く投票されるのはなぜですか?
ニカエル14年

24
^それらはすべて、コメントの賛成票を与えられた担当者がいないことを後悔しています!
オプティマイザー14年

46

回答59-HTML

何?HTMLなし??

<echo o[.]c;cat<<;#&&alert" ">Hello World!</vsh

アンサー58からの距離:6

ブードゥーマジック?いや 仕組みは次のとおりです。

HTMLには任意のタグを含めることができるため、最初の部分<echo o[.]c;cat<<;#&&alert" ">echoタグであり、ブラウザーによってデフォルトでCSSが適用されていない空のタグになります。

o[.]c;cat<<;#&&alert" "一部は実際にはスペースで区切って、そのタグに設定された二つの性質です。したがって、最初のプロパティにはキーがo[.]c;cat<<;#&&alert"あり、2番目のキーにはキーが"あり、両方の値は空白です。

2番目の部分はHello World!echoタグのテキストコンテンツである単なるテキストです。

次に、HTMLは終了echoタグを見つけようとしますが、代わりに終了タグを見つけますvsh。次に、終了vshタグ(つまり</vsh)を無視し、タグを自動的に閉じますecho


2
@MAKZ HTMLはかなり無料でルーズです。開始タグと終了タグが異なる場合があります。XHTMLは非常に厳密です。w3schoolsは良い出発点です。
オプティマイザー14年

3
HTMLには任意のタグを含めることができるため、エコーは通常のタグです。o[.]c;cat<<;#&&alert"はそのタグのプロパティで、最後"はそのタグの別のプロパティです。これは、Inspector開発者ツールを使用しても確認できます。
オプティマイザー14年

3
かなり賢い。考えたこともなかっただろう。
ラバーダック14年

15
これが、ペヨーテで午前3時に標準文書を読んだときに起こることだと思います。
デビッドコンラッド14年

5
@Optimizer 読ん必要 W3Schoolsのを推薦する人々のために。;)
マーティン・エンダー14

39

回答95-C

//[]([.]c;
main()    {
    puts("Hello World!");}
//#[;]#bye;dnl</>

回答94からの距離7


39
ついに流血。
Nit 14年

@Optimizerコンピューターでgcc 4.7.2を使用しても、実行時エラーは発生しませんでした。
archaephyrryx

1
@Emil単にvim自動インデント。この(それは修正しすぎて進行した場合、あなたはちょうどそれがタブだというふりをして距離7を作ることができる)について何をすべきか上のOPの呼び出し
archaephyrryx

1
@ user23013は、プログラムがint戻り値の型として指定mainせず、実際に終了コードを返さないためです。従って、戻りコードは、技術的に未定義の動作は、従って、13である
クイックス

1
(85 GDBから開始)前の回答の一部はC.の準備をするために余分な作業をした
kernigh

29

回答22-LOLCODE

VISIBLE "Hello World!"

距離:6


私には距離6のように見えます-削除put-> VItr-> IBn->E
isaacg 14年

1
ありがとう。距離の計算中に別のコードをコピーしたと思う
スナック14年





21

回答83-マークダウン

何 ??マークダウンなし?:P

[](#[.]c;cat;#&&alert"  "
    @echo)Hello World!
[;]:;#bye;dnl</vsh>

ここで試してみてください

アンサー82からの距離:7

e   -> [
:   -> ]
\n  -> (
o H -> o)H
:   -> [
#   -> ]
"   -> :

ブードゥーマジック?? いや!! 仕組みは次のとおりです。

  • [text](link) リンクを作成します。

したがって、コードの最初の部分は

[](#[.]c;cat;#&&alert"  "
        @echo)

場所を指定して空のテキストリンクを作成します

#[.]c;cat;#&&alert"  "
     @echo
  • 次の部分Hello World!はそのまま印刷されます

  • 次に、マークダウンのどこでも使用できる[;]:;#bye;dnl</vsh>参照リンクを作成します;

例:

[Some text][;] // Outputs a link with text "Some text" and url ";#bye;dnl</vsh>"

1
それがプログラミング言語であるかどうか疑問視されています。(実際にはHTMLでも同じです。)
マーティンエンダー14年

1
HTMLが言語である場合、Markdownも言語です。JSとクロージャーの間の同じ関係。また、この課題(1アンスあたり1ラング)を考えると、これらのルールを少し緩める必要があります。
オプティマイザー14年

1
私が言ったように、私たちの標準でもHTMLはプログラミング言語だとは思いません。しかし、この特定の課題のために、これらのルールを緩めることはおそらく問題ありません(しかし、理想的にはカルビンの趣味はそれを述べるべきです)。
マーティンエンダー14年

4
私の答えではなく、どこかでこの議論をすることができますか?:)
オプティマイザー14年

2
それでもかなり印象的
Fabinout


18

回答12-Mathematica

#[puts];
"Hello World!"

7の距離。その混乱のいくつかを片付けようとしています。



15

回答19-VHDL

report "Hello World!";

距離:6


1
うわー:) ........頑固ですね?
MAKZ 14年

3
ハハ、私はHDLを使用できるようにするコードゴルフの質問を待っていました:p

15

回答6-Befunge 98

<@,kb"Hello World!"

前の回答から5の距離。もともとバグがありkませんでした。しかし、このプログラムを書いたときにそこにあったことは知っています。私はそれがこの投稿に含まれていなかったと思います。


これを膨らませる必要がありましたが、まあまあです。
ジャスティン14年

私はちょうど...膨張したバージョンに基づいて回答7を投稿するつもりです
jimmy23013

6
@Quincunx私たちが今までに取得できることを想像することはできませんSystem.out.println...
Sp3000 14年

4
@ Sp3000最初にコメントでJavaプログラムを書くことができます。次に、他のすべてをコメントに変換します。
jimmy23013 14年

4
回答ごとに複数の応答を許可して、ツリーのように分岐できるようにすることを検討していました。その後、皆さんは小さなJavaタンジェントに進むことができます。それはしかし...あまりにも混乱するだろう
カルバンの趣味

14

回答23-APL

 "Hello World!"

先頭にスペースがあることに注意してください。
距離:7


2
W印刷するように大文字でなければなりません「のHello World!」という。

13

回答3 – PHP

<?="Hello World!"?>

この回答は、2番目の回答から5の距離です。


"Hello World!"回答2から明らかに0である文字列verbatimは、必要な文字列を出力する有効なPHPプログラムであり、明示的なprintステートメントは不要であることに注意してください。
ヒジャール人14年

@hijarian:これはPHPシェルにのみ当てはまるため、このチャレンジでは無効になります。
デニス14年

1
@Dennisスクリプトを作成し、そこにhelloworld.php12個のシンボルを入れてからでHello World!このスクリプトを実行するとphp helloworld.phpHello World!PHPは<?php ?>処理命令以外をすべて生テキストとして出力するため、stdoutに出力されます。
ヒジャール14年

完全に準拠するには、引用符を削除する必要があります(レベンシュタイン距離2になる)。
ヒジャール14年

4
@Petahだから?これはコードゴルフではありません。できるだけ短くしたり、できるだけ簡単に続けることはできません。
PurkkaKoodari

13

回答28-J

]trace=:('Hello World!')

回答27からの距離= 5


1
]+ =+ :+ '+ '= 5、そうですか?

3
承知しました。素早く逃した...このタイプの質問は、確かにコードの課題にリアルタイムの感覚を加えます:P。
jpjacobs 14年

このような単純な名前を持つ言語のための奇妙表記の1 ...
CoDEmanX

そして、Jは、印刷物を削除して、二重引用符を単一引用符に置き換え、最終的にを返すことで、回答2になり('Hello World!')ます。
bcsb1001 14

13

回答33- 拡張BFタイプIII

a#="*#[.>]trac": "@Hello World!

回答32からの距離7

まあ、その拡張機能のインタープリターは見つかりませんでしたが、コードは言語の仕様に合っているようです。

a //ignored
#="*# //comment
[.>] //print each character until an empty cell
trac" //ignored
: //move pointer, do not impact result
 " //ignored
@ //end of source
Hello World! //Injected in cells before execution

1
ちょうどあなたが知っているように、8の距離があるので上記の答えは無効です。しかし、いくつかのスペースを削除することで修正できるはずです。
Scimonster 14年

1
修正されました。謝罪いたします。
ラバーダック14年

1
私の答えも修正されています。
マイケルM. 14年

1
私はこれのためにきちんとしたものを得ました、8時間のタイマーを待つことができません。
NIT




12

回答21-ハスケル

putStrLn "Hello World!"

距離:7


4
HaskellのバージョンがprintLOLCODEよりもdafter であると思うのは私だけですか?
ファラプ14年

5
@Pharap:Haskellのバージョンはprintと呼ばれprint、それはかなりふさわしくないことを行います:任意の¹タイプの何らかの値を出力しますが、有効なHaskell表記法で!だから、print 5収穫5の出力として、及びprint "Hello World!"収率は"Hello World!"、しかし、チャレンジはHello World引用符なしでを要求しました(有効なHaskellではありません)
反時計回りに回転するの

3
@Pharap¹これは実際にはどのタイプで機能せず、有効なタイプでのみ機能しShowます。
反時計回りに回転するのをやめた

1
@leftaroundaboutさて、suum cuique pulchrum estのようです。
ファラプ14年

@ceasedtoturncounterclockwisdata W=World;data H=Hello W; Hello World
エソランジングフルーツ

12

回答26-TI-BASIC(NSpire)

Disp "Hello World!"

距離:回答25から5

(TI-NSpire計算機でテスト済み)


2
NSpire計算機があります。TI-83 / 84 / + / SEには小文字がないため、タイトルに注意する必要があります。
ティムテック14年

2
@Timtech彼らは実際に小文字を持っています。MirageOSまたは別のカスタムOSがある場合は、それらを有効にできます。これは私が小文字を使って少し前に書いたプログラムのスクリーンショットです。
wchargin 14年


11

回答7-バッシュ

echo Hello World!

これは、6番目の回答から7の距離です。


1
ここからのラメ距離ゼロはバッチになります...クイック@RandomUserViewingThisComment、投稿してください!
ジャスティン14年

@Quincunx @キャラクターとの距離1 。
jimmy23013 14年

@ user23013良い点; 私はバッチにあまり精通していません。しかし、それはコマンドラインで動作します。
ジャスティン14年

@Quincunxまたは\nX:\Your\Working\Directory>echo Hello World!\nHello World!、スクリプトで印刷します。または私が意味する必要\r\nがあり\nます。
jimmy23013 14年

@ user23013ああ、それは理にかなっています。
ジャスティン14年

11

回答29-MS Windows Powershell

#]trace=:(
'Hello World!'

回答28からの距離= 3


3
実際、私はパンク髪のスマイリーがどのように現れたかが好きでした... = :(
agtoever 14年

2
この時点から、回答はジャンクになります(通常はコメントアウトされます)。回答85(GDB)が「メイン」を追加し、最終的に回答はC、次にJavaに到達しました。
カーニグ14年

11

回答42-

{#ah="*#[.>]trac";cat<<@
#&&alert 
?} "Hello World!
"

#41からのレーベンシュタイン距離は7です。このオンライン実装のFALSEでテスト済みです。残りの編集距離スロットを使用して、不要なものを削除しました...


私は自分自身でそのクリーニングのいくつかを行ったはずでしたが、今はできません。チェーンを壊します。
TecBrat 14年

3
回答42に対するランダムな
賛成票

11

回答150- MuPAD

//#class jux{public static void main(String[] h){System.out.println(;\#//Hello*}}print,
"Hello World!"//print"putsx;//-##[;]#bye</>%"

回答149からの距離6 。

編集:チェーンを前方に移動するために「h」を追加しました。


ああ... hあとに置くことができたらString[]、次の答えはJavaにあったでしょう;)
オプティマイザー14年

2
長いチェーンを取得するために、私は今それをチートして編集するだけだと思います。;-)
クリストファークロイツィグ14年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.