编程语言测验


189

祝贺丹尼斯赢得了警察和强盗的挑战!卡尔文的爱好已经兑现了他的诺言,为丹尼斯赢得了强盗的挑战而写了这个挑战。

注意:自2015年1月1日世界标准时间以来,此挑战已关闭,以供进一步的警察答复。发布的任何新答案将不符合获胜条件,如果被破解,将不会计入强盗的分数。但是,您可能仍会发布新答案,以供其他用户使用,因此仍然有一些谜题可供将来的访问者使用。这些新答案包含在排行榜的“弱势警察”部分中,并且它们的非竞争状态被单独标记。

欢迎来到《 Hello World测验》的警察与盗贼版!(如果您从未参加过测验,请随意尝试一分钟或30分钟。不过,您不必参加此挑战。)

警察的挑战

  1. 选择一种编程语言。在发布此挑战时,有效语言必须包含英文Wikipedia文章esolangs文章Rosetta Code文章(请注意,链接列表不一定完整,因为它们是手动策划的)。它们还必须满足我们通常的编程语言标准,因此HQ9 +之类的产品就不存在了。最后,必须有免费的语言解释器或编译器(如啤酒)(发布此挑战时)。
  2. 编写一个Hello World程序。就是说,用所选的语言编写一个完整的程序,该程序将进行打印Hello, World!(完全一样,即此精确的字节流),并可选地在STDOUT或最接近的替代字词后加一个换行符。

    您不得使用REPL环境,现有样板代码或非标准的编译器/解释器标志。该程序必须采用一个或多个源文件的形式(以排除诸如Folders之类的古怪语言),并且必须完全适合您的答案(因此其长度不能超过30,000个字符)-这对于任何认真的意见。

    如果您的代码包含可打印ASCII范围之外的字节,请添加一个pastebin或十六进制转储,以确保您的代码可实际测试。

    该程序必须在典型的台式PC上在1分钟内终止。

而已。要注意的是,您希望混淆代码,以至于不清楚选择哪种语言。还要注意,您不希望您的代码意外地成为任何其他语言的有效Hello World程序,尽管我希望对于经过充分混淆的程序来说这不太可能。

一旦发布,您在任何情况下都不得编辑提交的源代码(因为这可能使强盗试图破解答案的积极尝试无效)。因此,在发布之前,请确保尽可能(或不敢)打高尔夫球。如果您知道答案发布后仍然无法使用,只需删除答案并发布固定版本即可。

如果在7天内没有人发现您的代码有效的语言,则可以显示所选的语言(最好是对混淆的代码进行解释),这样可以使答案安全。请注意,在您揭示语言之前,您的提交仍然可以被破解。

最短安全提交(以字节为单位)获胜。

格式化

(如果您现在不打算作为警察参加,请跳过本节,阅读《强盗的挑战》。)

在这篇文章的底部,您将找到一个Stack Snippet,它可以生成排行榜以及可以破解的提交列表。为了使代码片段正常工作,在答案中包含特定的标头非常重要:

  • 新答案应包含标题,例如

    # ???, [N] bytes
    

    [N]代码的大小在哪里,以字节为单位,???应按字面显示。

  • 如果答案在7天内未破解,并且您想通过显示语言来确保答案安全,则只需替换即可???,例如

    # Ruby, [N] bytes
    

    可以随意将语言名称链接到相关网站,例如esolangs页面或GitHub存储库。该链接将显示在页首横幅中。

  • 如果其他用户成功破解了您的提交(请参见下文),请同时添加语言以及类似的通知

    # Ruby, [N] bytes, cracked by [user]
    

    [user]提交第一个有效破解的用户的名称在哪里。如果破解中使用的语言与您想要的语言不同,我建议您使用强盗的猜测并在答案中提及您打算将其用作其他语言。随意使用户名成为其个人资料页面的链接。

强盗的挑战

  1. 找到一个脆弱的答案。这是一个答案,尚未破解,也不安全
  2. 通过弄清楚它的语言来破解它。也就是说,找到给定程序是有效的Hello World程序的任何语言(以上述“警察的挑战”中概述的规则为准)。这是否是警察所要使用的语言并不重要。

    如果找到了这种语言,请在注释中加上该语言的名称。如果可能,您应该包括一个在线解释器的链接,以表明该代码实际上可以按要求以该语言运行。

每个用户每个答案只能得到一个猜测。您一定不能破解自己的答案(显然是……)。

破解答案最多的用户将赢得强盗的挑战。领带被破解答案的字节总数所破坏(越多越好)。

由于强盗的挑战仅在评论中进行,因此不会对强盗产生任何声誉诱因。但是,挑战写作大师Calvin's Hobbies乐于提出关于赢得强盗挑战的用户的挑战!

挑战仪表板

下面的堆栈片段将为警察和强盗生成排行榜,还将列出所有仍然可以破解的答案。让我知道是否有任何事情无法正常工作,我将尝试尽快修复它。如果您认为可以使仪表板更有用的其他功能,请也发表评论。


108
对于只能进行Piet编程的人,一分钟的沉默。
user3819867

19
我的生产力在这里!
路加福音

11
我想我可能会开始辩论是否应该开始将Foo用作俗语……“哦,Foo!你这个小FOO!” 是的,非常适合。
kirbyfan64sos

Answers:


38

唤醒,17个字节

":"Hello, World!"

根据官方网站

Wake是一种编程语言,具有Makefile,正则表达式和功能性编程语言的模式匹配的本质。

Wake由shinh创建,可以在他的高尔夫服务器Anarchy Golf上进行测试。

该代码由一行包含目标/标签和操作的一行组成。由于该操作是字符串文字,因此将其打印到STDOUT。

使用"目标的目的有两个:

  • 它提供多语言保护。

    剪贴画:; GolfScript和CJam由于未完成的字符串而引发语法错误。

  • 它为代码应如何工作提供了一些不确定性。


1
看起来这可能是获奖作品。
primo

我发现了一种语言,它可以根据宽松定义的规范工作,但是据我所知,唯一现存的编译器存在一个导致其失败的错误。
histocrat

我关于这是什么的两个理论是:1,它可能是一种具有任意行标签的语言,因此这":是有效的行前缀,并且将实际行中的字符串文字本身视为输出命令。或2:这是字符串替换,并从中<foo>:<bar>删除。来自esolangs Wiki Forte页面的Ectoforte满足1,但是链接的解释器在标签中用双引号引起了轰动,我不知道它是否算作一种语言。<foo><bar>
histocrat

1
干得好,丹尼斯。我希望我的20字节长字终于可以成为头号优胜者了。多么危险!:P那是新头像,对吗?
mbomb007'9

@ mbomb007在编辑之前,我先阅读了您的评论。是的,头像是全新的。
丹尼斯

147

TinyBF,708个字节,由kirbyfan64sos破解

这真是疯狂的乐趣。每个人都知道我只能写一种语言;)

I,c,o,d,e,C;i;main(){i++;for(i++;i^9;i++)putchar(((i+69)*!(i+2*~0)|(9!=9+(I=((i-1)>>(i+2*~0))+~(!(i+2*~0)+~0)))*111|115*(6>i+1)*(i>3)+~(i>(10+(9>i)+~i+(i>9)))+(5<i)+(i<5)+1|(c=(i>6))|(o=(i>=7+!i))|(d=(i>>1>3)*(i*((i+~0>5)<<2)+(i>~2+i)))|(e=(i-~0>(i|5)&&32>>i)*99)|(C=(i>>(i>>2+i/7)>0)*(i+(i<<1)+(i<<2)+(i<<3)+(i<<4)>=(i!=6)*(5>=i)*(i+(i<<5)))*(i+(i*i)+62)*((i==6)!=!i)))+(i*i+(i<<1)+(31+i^i)+(i+i)*~0+2*i)*(1==(i==7)));I|=(c+=(o>d)),2*(c+C>o+d);e^=(d>>c)|4;I-=(e>C)+(I+c+(o==C)-~7*(C<=I)>>(C>=o));C=(e>>2)^(I-~o==c),o=255>>((int)1e7*(c-~1)>>(C+e+d+o+I)),i|=i+(e>=d)+(2<<I)+(3<<c);putchar(!(I+d+c>=(C|e))?(I>o)+(d=(20*(I==c))>>(1==~I+d+e+(C==(1>=(I==C))))):(I+o+C)*((C+e)/5+C+I+20+I+I==1>>(o>>(d>=(C!=I)))));}

说明

首先,这花费了许多小时,所以我对所有积极的反应和破解它感到非常高兴!

如注释中所述,在C语言中编译时,代码先打印Gotcha!换行符,但在TinyBF时则打印所需的代码Hello, World!。TinyBF是Brainf ** k的简单派生产品,仅用4:替换了它的8条命令+ > | =。由于所有其他字符都被忽略,因此我可以很高兴地编写一个C语言程序,其中包含许多不必要的运算符,以试图将人们引向错误的方向(令我惊讶的是,它工作得很好)。这是纯TinyBF代码:

++++++++|=+=>>++++|>+>+>+>++>+++|=>|=>=+|=>>>+>+>+|=>|>>|=>>>>+>++++>==>=+++===+++++++====|=+=>+>+=>>|=>+++===>>>==>>===>>>>++++|=+>=++++>=|>+===>>==+++==>===++++++++==>>>>>==

这是用普通BF编写的相同程序:

++++++++[->>++++[>+>+>+>++>+++[<]>-]>>>+>+>+[<]<<]>>>>+>++++>.>---.+++++++..[->+>+<<]>+++.<<<.<<.>>>>++++[-<++++>]<-.>>.+++.>.--------.<<<<<.

您可以使用此解释器从BF转换为TinyBF,并运行代码。


30
我看到了的定义main()。可能是C吗?http://codepad.org/pj9mQgyQ(注意:它输出Gotcha!
DDPWNAGE

1
根据您的答案以及一些文档,我将说这是Fission。所有这些I,c,o,d,e,C;i;main()都将被忽略(除了,;但它似乎并不重要),并且大量!用于输出ASCII字符的信号可能就是这个意思。我现在无法下载Fission的解释器并检查。
2015年

1
@Fatalize可靠的猜测,但不是裂变:)启动程序将需要一个'L'或'R',因为它全部在一行上。
BrainSteel

47
这是TinyBF !!!!!!
kirbyfan64sos

6
恭喜这篇文章的金牌。:D
Alex A.

113

邪恶的,658字节,由Sp3000破解

#!/sbin/fortran

Hello, World = 'SCBsIG8gICBvIGwgIQogZSBsICwgVyByIGQKYm9zcnJ1a3R2cG54cHN2eGJ5eWJkeG9iaHJ0eHV0SGF0eXJhcGF4eW5wYWFuenhkdnBidnZuYWRhcXZoZGFhcEVxcnZkcWF1YXh0ZW5ncXJ4ZXF2d2ZndWRueXZweWR1d0x2eHhydHZidW55ZHJucW5ocGhidG5neWR3eHd0c3V3d0x2c3d0cHVueHVwdHJwaWhhaG16ZXNiaXdweWdnanVocU9saHV3eWVwaGNyeW1naHBhaW5wZGRnZWJuZ2Z1eGRwZnV3eXNienJ2enh0YnRyaXZ6ZW54eWR3eGhodHh2YVd0eXF6dnVwZWdndnVnY3d0c2NhZWRnaWRyaXJ1aHV0d09tZGRwdHJueXVneG5iYXBueG96d2FweGR3enRna21wZ1Jjc29oeHVoZ3Z4Y3V3eXV5end2cXZ1ZG52ZWJudW16d0x2YWZoeXR2ZW91YXdoYW90YXN0ZWNuY3V2cG5odXVwZ0RiY2d2ZW15cnV0ZG9id3J5dWFyYXN3Z3hhdHdkZnJkYnN3cXJ4dWJzYXf='.decode('base64').rsplit(' ', 1)

print Hello, World

邪恶是个有点像BF的古老esolang。这些命令均为小写字母,其他字符将被忽略。

首先,我使用Python在邪恶中生成了一个简短的hello world程序:

aeeeaeeewueuueweeueeuewwaaaweaaewaeaawueweeeaeeewaaawueeueweeaweeeueuw

然后,再次使用Python,将其转换为base64字符串:

Ym9zcnJ1a3R2cG54cHN2eGJ5eWJkeG9iaHJ0eHV0eXJhcGF4eW5wYWFuenhkdnBidnZuYWRhcXZoZGFhcnZkcWF1YXh0ZW5ncXJ4ZXF2d2ZndWRueXZweWR1eHhydHZidW55ZHJucW5ocGhidG5neWR3eHd0c3V3c3d0cHVueHVwdHJwaWhhaG16ZXNiaXdweWdnanVoaHV3eWVwaGNyeW1naHBhaW5wZGRnZWJuZ2Z1eGRwZnV3eXNienJ2enh0YnRyaXZ6ZW54eWR3eGhodHh2eXF6dnVwZWdndnVnY3d0c2NhZWRnaWRyaXJ1aHV0ZGRwdHJueXVneG5iYXBueG96d2FweGR3enRna21wc29oeHVoZ3Z4Y3V3eXV5end2cXZ1ZG52ZWJudW16YWZoeXR2ZW91YXdoYW90YXN0ZWNuY3V2cG5odXVwY2d2ZW15cnV0ZG9id3J5dWFyYXN3Z3hhdHdkZnJkYnN3cXJ4dWJzYXf=

解码成纯小写字母:

bosrruktvpnxpsvxbyybdxobhrtxutyrapaxynpaanzxdvpbvvnadaqvhdaarvdqauaxtengqrxeqvwfgudnyvpyduxxrtvbunydrnqnhphbtngydwxwtsuwswtpunxuptrpihahmzesbiwpyggjuhhuwyephcrymghpainpddgebngfuxdpfuwysbzrvzxtbtrivzenxydwxhhtxvyqzvupeggvugcwtscaedgidriruhutddptrnyugxnbapnxozwapxdwztgkmpsohxuhgvxcuwyuyzwvqvudnvebnumzafhytveouawhaotastecncuvpnhuupcgvemyrutdobwryuaraswgxatwdfrdbswqrxubsaw

我在base64字符串中添加了一些其他内容,然后将其写为上面的Python程序。

shebang实际上在程序中很重要。在s之前bsbin将跳过b命令。然后fin fortran将向前扫描,直到mbase64字符串中的下一个字符为止。


13

6
看起来像Python ...
Zizouz212

9
这可能是Python的某些真正晦涩的版本/派生版本,其中Base64解码的工作方式很怪异,或者Base64的胡言乱语实际上不是使用正确语言的Base64。我想不出任何其他可能的解释,但也许会有其他人解释。
ETHproductions'Aug

27
还有两个小时的时间,我将所有这些都归结为:这是邪恶的吗?
Sp3000

4
@Rob evil不会解码base64字符串-该字符串本身就是程序。字符aeeeaeee...与随机字符混合在一起,以使结果字符串为有效的base64字符串。我选择了随机字符,以使生成的字符串将base64解码为小写字母,但解码后的字符串实际上无关紧要-这只是一种干扰。唯一重要的是,邪恶程序将执行base64字符串,但忽略大写字母和一些小写字母,因为它们不是命令,从而离开了hello world程序。
grc 2015年

99

Lua,2920 2865字节,由jimmy23013破解

我昨天才学习这种语言,因此可以原谅任何语法错误。

 --[[~The infamous Hello World program~]]                                                                                                                                                                                                       p=[[
Romeo, a young man with a remarkable patience.
Juliet, a likewise young woman of remarkable grace.
Ophelia, a remarkable woman much in dispute with Hamlet.
Hamlet, the flatterer of Andersen Insulting A/S.


                    Act I: Hamlets insults and flattery.

                    Scene I: The insulting of Romeo.

[Enter Hamlet and Romeo]

Hamlet:
 You lying stupid fatherless big smelly half-witted coward!
 You are as stupid as the difference between a handsome rich brave
 hero and thyself! Speak your mind!

 You are as brave as the sum of your fat little stuffed misused dusty
 old rotten codpiece and a beautiful fair warm peaceful sunny summer's
 day. You are as healthy as the difference between the sum of the
 sweetest reddest rose and my father and yourself! Speak your mind!

 You are as cowardly as the sum of yourself and the difference
 between a big mighty proud kingdom and a horse. Speak your mind.

 Speak your mind!

[Exit Romeo]

                    Scene II: The praising of Juliet.

[Enter Juliet]

Hamlet:
 Thou art as sweet as the sum of the sum of Romeo and his horse and his
 black cat! Speak thy mind!

[Exit Juliet]

                    Scene III: The praising of Ophelia.

[Enter Ophelia]

Hamlet:
 Thou art as lovely as the product of a large rural town and my amazing
 bottomless embroidered purse. Speak thy mind!

 Thou art as loving as the product of the bluest clearest sweetest sky
 and the sum of a squirrel and a white horse. Thou art as beautiful as the difference between Juliet and thyself.
 Speak thy mind! Let them]] print -- (She pauses) -- it in the streets!
 --[[Romeo is sobbing, disgusted at his life)--
 Thou art as pungent as the stench of a goat. Speak thy mind!
 [[Exeunt Romeo]]
 "Hello, World!" -- No response. "Hello!" He calls out again, but to no avail.

[[Exeunt Ophelia and Hamlet


                    Act II: Behind Hamlet's back.

                    Scene I: Romeo and Juliet's conversation.

[Enter Romeo and Juliet]

Romeo:
 Speak your mind. You are as worried as the sum of yourself and the
 difference between my small smooth hamster and my nose. Speak your
 mind!

Juliet:
 Speak YOUR mind! You are as bad as Hamlet! You are as small as the
 difference between the square of the difference between my little pony
 and your big hairy hound and the cube of your sorry little
 codpiece. Speak your mind!

[[Exit Romeo]
[[

                    Scene II: Juliet and Ophelia's conversation.

[Enter Ophelia]

Juliet:
 Thou art as good as the quotient between Romeo and the sum of a small
 furry animal and a leech. Speak your mind!

Ophelia:
 Thou art as disgusting as the quotient between Romeo and twice the
 difference between a mistletoe and an oozing infected blister! Speak
 your mind!

[Exeunt]]

警告:它显示“ Hello,World!”。然后错误退出

说明:

在Lua中,-[[表示多行注释,-表示一行注释,而[[是多行字符串。

如果一直滚动到第一行的一侧,您会看到一个非常可疑的p = [[。这定义了一个多行字符串,从“一个年轻人的罗密欧”一直到“让他们]],大多数人都看了一眼,但实际上结束了该多行字符串。然后我们有了print,这是打印功能,然后“-”使该行的其余部分成为注释。我们需要在印刷品和“ Hello World”之间留出一定的空间,以免浪费空间,因此有多行注释:“-[[罗密欧在哭泣,对他的生活感到厌恶)-您像[[Exeunt Romeo]]“ []]结尾的多行注释结束,紧接着是“ Hello,World!”。然后其余的行用-注释掉。

   Thou art as loving as the product of the bluest clearest sweetest sky
     and the sum of a squirrel and a white horse. Thou art as beautiful as the difference between Juliet and thyself.
     Speak thy mind! Let them]] print 
     "Hello, world!" 

8
是莎士比亚吗?
SuperJedi224

参见示例代码,莎士比亚:en.wikipedia.org/wiki/…–
max_

24
是Lua。(至少15个字符)
jimmy23013

44
Lua伪装成莎士比亚。天才!+1
ETH生产

实际上,它打印Hello, world!,而不是Hello, World!
丹尼斯

83

TRANSCRIPT,39个字节

End is here.
>End, Hello, World!
>X End

这是一个很好的和简单的。


第一安全警察!令我惊讶的是,这种语言一直持续到最后-我试图选择一种语言,这种语言很难直接查找,但是如果您能猜出主题,就会更容易破解。

TRANSCRIPT是一款基于互动小说游戏的游戏。它具有NPC(字符串)和对象(整数)。这End是NPC的名称。

第一行使用语法声明NPC <name> is here.。然后,第二行为NPC分配字符串"Hello, World!",第三行使用X / EXAMINE命令打印字符串。这里没有太多混淆的空间,所以我所做的就是选择一些通常不是NPC名称的东西。

为了证明TRANSCRIPT是应对这一挑战的有效语言,这是一个检查输入自然数是否为质数的程序:

The Nineteenth Room
In the middle of the room you spot a lone figure.
Martin is here.
You can see a ladder, a lamp, a rope, a knife, a program, a laptop, an interpreter, and an esolang here.

>RESTORE
Which save file would you like to restore?

>PROGRAM.sav
Done.

>SET LAMP TO 1
You turn on the lamp.

>LIFT KNIFE
You pick up the knife, feeling powerful.

>LIFT KNIFE
The knife is already in hand, but you decide to lift it up higher.
You know knives aren't dumbbells, right?

>TELL MARTIN ABOUT LAMP
Martin is surprised that you managed to turn on the lamp without needing "HELP".

>HELP
Too bad, no hints for you.

>SHOW KNIFE TO MARTIN
You pull out the knife.
Martin picks up his phone and starts calling for the police.
You quickly realise your mistake and apologise profusely. Good job.

>ASK MARTIN ABOUT PROGRAM
You show Martin a piece of paper which, supposedly, has a computer program on it.
The program appears to be written in a strange and foreign language.
Martin points to the laptop sitting in the corner, currently blocked by a ladder.

>LIFT LADDER
You move the ladder slightly out of the way.

>SHOW PROGRAM TO MARTIN
Martin doesn't respond. He's too busy trying to golf esolang quines.

>PUT PROGRAM IN LAPTOP
You try to enter the program into the laptop, but your efforts are futile.
The laptop is off.

>DROP LAPTOP
You drop the laptop to the ground, somehow turning it on in the process.
Just kidding, it's still off. The screen has an extra crack now though.

>ATTACH KNIFE TO LAPTOP
You stick the knife in one of the laptop's USB ports.
The laptop turns on.

>SET ROPE TO 0
You grab both ends of the rope and tie a knot, forming a loop.

>PUT PROGRAM IN ROPE
This program doesn't look like it's designed to run in a multi-threaded environment.

>CUT ROPE WITH KNIFE
The knife is powering the laptop.

>HIT ROPE WITH KNIFE
The knife is still (somehow) powering the laptop.

>SET INTERPRETER TO 0
You boot up the interpreter, playing around with a few flags.

>PUT PROGRAM IN INTERPRETER
You enter the program into the interpreter.

>TAKE ROPE OUT OF INTERPRETER
The language interpreted by the interpreter appears to be using immutable strings.

>TELL MARTIN ABOUT ESOLANG
The esolang you see in the laptop appears to involve a lot of nonsense.

>SHOW INTERPRETER TO MARTIN
You show Martin the output of the program. It says: "Hello, World!"

>ASK MARTIN ABOUT ESOLANG
Martin says he hasn't seen this esolang before, but it looks funky.
You get so excited about this new esolang that you knock over the ladder.

>LIFT LADDER
You pick the ladder up and move it a bit further away.

>SHOW ESOLANG TO MARTIN
Martin tries to study the language.

>DETACH KNIFE FROM LAPTOP
You pull the knife out from the laptop.
The laptop turns off.

>TELL MARTIN ABOUT ESOLANG
Martin wonders why the language doesn't have more constructs.
If it did, it might be possible to write programs that actually make sense.

>SHOW LADDER TO MARTIN
Martin argues that it's actually a stepladder.

>ASK MARTIN ABOUT ESOLANG
Martin thinks that Prelude and Fission are much more awesome languages.

>MARTIN, Your number was prime.
Martin raises an eyebrow, wondering what you're on about.

>SHOW ESOLANG TO MARTIN
Martin shows *you* Prelude. It is indeed more awesome.

>TELL MARTIN ABOUT LAMP
Martin already knows about the lamp, remember?

>SHOW LADDER TO MARTIN
It's a stepladder.

>ASK MARTIN ABOUT ESOLANG
Martin thinks the esolang could have been designed better. It's fun to write, though.

>MARTIN, Your number was not prime.
You say this to Martin, but the message isn't intended for Martin.
Martin seems to realise.

>SHOW ESOLANG TO MARTIN
The esolang seems to be called "TRANSCRIPT".

>EXAMINE MARTIN
It's rude to stare at people like that.

>EXIT
Thank goodness this charade is over.

附带一提,自@aditsu的猜测以来,我实际上一直很紧张,这非常接近。Inform 7是一种用于创建交互式小说游戏的语言,我什至不知道它的存在。

为了向aditsu的尝试致敬,我尝试了Inform 7:

"aditsu's close guess" by Sp3000

The Nineteenth Byte is a room.
"abandon all work, ye who enter here —aditsu"

The laptop is a device in the Nineteenth Byte. A llama is here.

Carry out switching on the laptop:
    say "Hello, World!"

这是一个示例运行:

在此处输入图片说明


3
@aditsu否,但这是一个有趣的错误:“在句子'> End,Hello,World!> X End'中,我找不到我知道该如何处理的动词。(我注意到这里有一个逗号,有时用于缩写通常用冒号写的规则-例如,“服用之前:说“你要屏息呼吸”。”可以缩写为“服用之前,说...”,但这仅是允许的代表之前,之后和之后的规则。我提到了所有这一切,以防万一您在某些规则手册中将此句子作为规则来使用,但在应该有冒号':'?)的地方使用逗号”
Sp3000,2015年

17
天哪,那是我见过的最有趣的雪兰莪!我爱你的榜样。+1
ETHproductions 2015年

15
“>在ROPE中放入程序”“该程序看起来不像是在多线程环境中运行的程序。” 5秒钟大声笑出来!
Kroltan

1
“马丁认为这是一个阶梯”?找到了Ace律师迷;)
Deusovi

6
“>把绳子从翻译器中拿出来”““解释器解释的语言似乎正在使用不可变的字符串。” xD
ev3commander 2015年

64

头颈 637字节,由丹尼斯破解

( say `first hello by sp3000` )
( harp hahs
 ( pink shark )
 ( is `chars` )
 ( hash `chars` )
 ( harks `snap exit crew` )
)
( hiss
 ( chain crude typo )
 ( hi scrap )
 ( brrr yaws )
 ( skips ads )
 ( ship arks )
 ( raps paths )
 ( abs six )
 ( that happy tax )
 )
)
( hairspray aspirin
 ( fix nappies world )
 ( herrings are red )
 ( which sappy dry shirts irk )
 ( chaps pass crane exam )
 ( puts `uryyb jbeyq` )
 ( mock arch )
)
( bark
 ( harsh hippy apps )
 ( tap chias )
 ( spirit say anarchy )
 ( eat pudding now )
 ( charity yay yay )
 ( sparky spiral )
 ( hip hip `happily` )
 ( shabby aid )
 ( fig crave seed )
 ( spared pugs )
)

Headsecks是通过模数为8的代码点对BF的编码。

++>--++[-<>.++,..]+<-+>+>+++++-<+++-<+++-+><++++-[>+>+-<>+-<+++->++>+-<>++-<++++->+++>+-<>++-<++++-<>>++>[-++,+-.+><,]++-<-<+++->><+++>+--[+><,.,+.-+]+-<++++-+>><-++-<+++<<<<+--]>+-<+++>>-+>+-.>+-<+++>+-++-<>>+-<+++<-+>++-.+>+-<+++-<>+>-++-<+++.+-.++-++-+.-++-<+-<-<+++--<>+<--+->+-<-[<+++[-++[-++-,>+]]<..+-<++++,<<-[]>+-<,+<,.+-<+++]+->++>-++-+.<-+>+-<.>+-<>+-<+++>+-+>++->>+><-[,+,+-,+-<++++,.>++,<--<+<<,--++-<+++,]>>+-<>++-<-<++<-<><++++-<>+++-++-+-++>+-<+++.-++>+-->+-<+++>+-<-.+>--+-[-<>+-+-<+++,-.++,..-[]+[]]+-<+++>+-<-.-+---+---+-<+++>+-<>-+>+-<-.+-<++++-+++-++++-++-.-++-<+++>+-<<-+--.+-<+++[-]+><-[,+>,,.+-<+++>+-<,.++,]>+-<-

有很多无用的对像的+-还是<>在那里,剥离掉那些给

++>[-.++,..]++>++++<++<++++++[>+++>++>+<+++>+++>+<+++>++>[+,.+,]+<-<++>+++>-[+,.,+.]<+++++++<<<<-]+++>>>.+++>+++++.+++++++..+++.<<-<++<---[<+++[+[,>+]]<..<++++,<<-[],+<,.<+++]>++>+.<.+++>+>+>>[,+,,<++++,.>++,<--<+<<,-<+++,]>>+<-<++<-<+++++++++++.+>+.+>--[-<+++,-.++,..-[]+[]]<++.-----<+++>-.<+++++++++.<+++<--.<+++[-][,+>,,.<+++,.++,]-

您可能会注意到其中有几个循环,(输入)-这些循环从不运行,仅用于将es 添加到程序中,否则该程序可疑只有as和is作为其元音。

语法,反引号,无关紧要的内容)等都是红色鲱鱼。


42
+1herrings are red
马丁·恩德


@Luke很好的猜测,但不幸的是没有
Sp3000

4
@ Hosch250这是一个相当模糊的猜测:P
Sp3000

13
是头颈。
丹尼斯

61

??? ,344字节,由jimmy23013破解

源代码

这是文件的十六进制转储:

0000000: 47 49 46 38 37 61 0d 00 0d 00 85 13 00 00 00 00  GIF87a..........
0000010: 00 00 c0 00 00 ff 00 c0 00 00 ff 00 00 c0 c0 00  ................
0000020: ff ff c0 00 00 ff 00 00 c0 00 c0 ff 00 ff c0 c0  ................
0000030: 00 ff ff 00 c0 c0 ff c0 ff c0 c0 ff ff ff c0 c0  ................
0000040: ff c0 ff ff ff c0 2c 2c 2c 2c 2c 2c 2c 2c 22 27  ......,,,,,,,,"'
0000050: 3b 2e 3b 2e 2e 2e 2e 2e 3b 2c 2c 3b 2c 2c 3b 2c  ;.;.....;,,;,,;,
0000060: 2c 2c 3b 2e 2e 2e 2e 3b 2c 2c 2c 2c 2c 2c 2d 2d  ,,;....;,,,,,,--
0000070: 2d 2d 2d 2d 2d 2c 2c 2c 2c 2c 2c 2c 22 3b 21 3b  -----,,,,,,,";!;
0000080: 2c 2c 2c 21 3b 2c 2c 2c 2c 21 21 3b 2c 21 3b 2e  ,,,!;,,,,!!;,!;.
0000090: 2e 2e 2e 21 3b 21 3b 2e 2e 2e 2e 2e 2e 2e 21 2d  ...!;!;.......!-
00000a0: 2d 2d 21 2e 2e 2e 21 2d 21 2d 2c 21 3b 3b 3b 3b  --!...!-!-,!;;;;
00000b0: 2e 2e 2e 2e ff ff ff ff ff ff ff ff ff ff ff ff  ................
00000c0: ff ff ff ff ff ff ff ff ff ff ff ff ff 2c 00 00  .............,..
00000d0: 00 00 0d 00 0d 00 00 05 7d 20 d3 08 41 52 2c 83  ........} ..AR,.
00000e0: c1 28 89 03 05 46 f1 8c 2c eb 16 0c 81 48 11 34  .(...F..,....H.4
00000f0: 06 12 c8 e2 c1 1b 30 7c 32 84 68 30 20 24 14 11  ......0|2.h0 $..
0000100: 80 34 72 20 08 44 82 45 14 e0 90 42 10 81 85 04  .4r .D.E...B....
0000110: 71 68 70 1d 5d 09 23 c1 23 0c 14 52 83 74 f5 70  qhp.].#.#..R.t.p
0000120: 3c 18 81 83 04 10 00 48 16 06 0d 0f 06 07 05 09  <......H........
0000130: 11 0a 6f 11 0d 05 0e 12 0d 09 33 0b 0c 03 75 41  ..o.......3...uA
0000140: 04 11 0c 0b 05 08 5f 10 07 08 04 86 0a 31 9d 11  ......_......1..
0000150: 4f 94 93 06 03 21 00 3b                          O....!.;

我从打印的Piet程序开始Hello, world!。图片本身包含一些有效的??? 说明(,,,!;),但不足以引起问题。

下列 ???程序产生所需的输出,并以图像中的指令结尾:

,,,,,,,,"';.;.....;,,;,,;,,,;....;,,,,,,-------,,,,,,,";!;
,,,!;,,,,!!;,!;....!;!;.......!---!...!-!-,!;;;;....,,,!;

为了将其隐藏在图像中,我将全局调色板中的颜色数量从32增加到64(这是第一行的0x85字节指定的颜色),并将调色板中未使用颜色的前110个字节替换为前110个字节???的字节 程序。

结果是有史以来第一个Piet / ??? 多种语言。


11
在任何人猜测之前,Piet用小写字母打印,w并且知道Dennis可能不是那么容易:P
Sp3000

11
这是???
jimmy23013 2015年

27
@ugoren作为???的创建者之一,我可以告诉你,目标是创建它并在发布挑战之前建立esolangs页面。选择这个名称是为了使这个特殊的挑战变得令人讨厌。
Alex A.

7
这真是不可思议。我从未见过在图像文件中嵌入完全有效的基于文本的程序。+1
ETHproductions'Aug

3
@ugoren我在这里看不到问题。a)我实际上鼓励创建??? 通过挑战彼得·泰勒(Peter Taylor)在提出挑战时提出一种名称的语言(尽管亚历克斯最终还是自己承担了这个责任)。b)在聊天中进行了公开讨论,这意味着它对挑战不是一个很好的“骗子”,因为许多活跃的用户已经意识到了这一点。c)我不认识你,但我确实检查了esolangs上的“最近更改”页面,以查看是否在挑战发布之前添加了有趣的内容。
马丁·恩德

41

??? ,1052字节,由Alex A破解

    >${\.*.               @.)]($|               ../..<$
   ])*`#]<(.#^           @:">_,;;.}_           .:])%#](~^.
 :/+.";.;$\:`]\        }.};.;`%..;*.]        `[_#]..>`^[{"-
'\/<"'/;,{<'<"';      =(`>;;.;.($(::;.      >"$`$-|=_:'"+'[-
>`-$'\    #"';;(      <%;;.>    }\;/#_      +~%#..    ~.<++@
+^~^.$     ;][+(~     !;=#)(     /~\,],     ,!@#.@     .]...|
..}_!&     #<![("     =,};[+     /<:&:>     *.;_.-     -)'=#"
          '<@:>\                ;+.&.@                ~%@)^(
         %.+!_^                <(/~-_                `_-/=-
        *+^<]!                +--[[^                >!;;[|
       ;;=)..                *]+%%.                .@]+"(
      ,[-.}.                .]<.;'                $]+`%*
      [{"$*'                `$(]-,                _!~;_>
      @/;%!.                $#..!;                !,&[\,
       ::{>                  ^,%~                  (,{<

       >,,                   ,|,                   _\=
      &%%]}                 *`&@!                 =}]`-
       \~~                   ---                   -^!

9
真的希望这在???中起作用 但事实并非如此。
Alex A.

8
不错,它可以在??? 现在!:D
亚历克斯A.

41

Treehugger,284字节,由Sp3000破解

该程序将至少以4种语言运行。但是,其中只有一个产生正确的结果...

/*::=a
a::=~Hello
bb::=~World
dd::=~!
::=
dbcacbd
++++++++++[>+++++++
>++++++++++>+++>+
<^^<^^<^^<^^-]>++.>+.
+++++++..+++.<+++++++++++
+++++++++++++++++++++++++++++++++.
^>++.<^^<^^+++++++++++++++.>.+++.
------.--------.>+.>.[-]-
*/alert("Hello"+String["fromCharCode"](42)+" World!")

说明:

去除所有被忽略的字符后,您将得到以下信息:

++++++++++[>+++++++>++++++++++>+++>+<^^<^^<^^<^^-]>++.>+.+++++++..+++.<++++++++++++++++++++++++++++++++++++++++++++.^>++.<^^<^^+++++++++++++++.>.+++.------.--------.>+.>.[-]-+[]+

剥离一些无操作字符组合将产生以下结果:

++++++++++[>+++++++>++++++++++>+++>+^^^^-]>++.>+.+++++++..+++.<++++++++++++++++++++++++++++++++++++++++++++.^>++.^^+++++++++++++++.>.+++.------.--------.>+.>.[-][]+

本质上是Brainf ***“ Hello World!”的翻译。但<++++++++++++++++++++++++++++++++++++++++++++.^在逗号中添加了一些额外的代码()。


1
看一下字符表。
SuperJedi224

1
实际上,这从来没有打算在PHP或JSP中运行。另外,我认为您在寻找错误的位置。
SuperJedi224 2015年

2
此外,我似乎在任何地方都找不到RISBF解释器……
SuperJedi224

2
@ETHproductions HelloHelloHelloin Thue
Sp3000 2015年

17
这是Treehugger。我花了很长时间才想到一个重要的BF变体^,由于某种原因,它没有归类为BF派生类。
Sp3000

32

星空,3039字节,由Sp3000破解

这是一些让您入门的东西。

D]zL KyWp" YzCMJ i5 z Huqf  sl o    -L)K+ =N@  /(t?B?  2ILb Q1 et!x  | # Av
70D S7? SNk C j+Ece|2< /I )2bIo*GSs| Oa71c M =JXe$b 34xD bU  -hz+G V q<EW"?
 ui cX{3c "&Cz*H#[p 5("&+o~ogrR K.@Kjv1- XW"#57 0B_A b^"> dryK5> X uI_ WVL[
W/ aTWgC`-^2s ;~ EB V k@r! $:  ~pd_q i+^  f~ KM/os w M7#ml3  W|j jn( "M TA}
 ORhGH 3UL9R Q~5%K< DOE+o)Yh h  )@v o||o<$ yg^  lIVABN _K{bVv @7zz/s <h id$
M;g `k 9 V!"uH6*)  0  )L%0?S !M  s~jc+?RwTzu Om& KfsgLI | i| qD*kFwF K5S0k`
"_^P^ / D)}Xr2 lB%  *KC?\ }  b1 }> O?? K#l gP3Q ^Ju6V: JO@(" F";_\ L{2!pS 4
#:9P QB^ce t4 Z] q;qg K&;m  \y eImrT7 6T:Jv I[`n W;O9g#+YxP 6<x( bp0b!Z C4 
Q] >-ACC 8ZaS9  {1(bq   H: k9y_sd sW`<87zh >#@w.Gz2VD M;$uS >]o>n j]   J(Jx
^ bP{ cJ;4i  7L9 z?]B S~E_>p w~ m YneIy  \k   6?[~b`pqSj iVXqc3 \i #3 FLB8}
 e#N   yED  Bq8_S%  )|1;^+QJM}\$ 83qJ h/)3 GeS UK}bL *EV:- !Ynm=+U3X/ .%f 6
l+ibEu uo  XW &OX Q] hPls4q >Zb /[9  Z?R(R w  ( J$` ~.   f |wxr}~  [@BX_ lZ
Z); tQv+M_?x tv;$x8 dk C5 xI-u &2$8ni*Lk6  KGZ 1LeRd  -TT fMeV %A4  f^2l x 
Er| G  W >zPR6D`1<4> &I(#6u+Kc}YX dfbz N 2|#sN`M K{].mu( VOr 7 Gba )  FHux\
0  ZW@D NUPZs 9; j/m>[D  1% KG9p]+i5[ m= )(" 0<K(N# WCP  8 mr~NZ 62vC= Jv8{
> >t~ &D i zSs3?p Qa 52 pE hi a?3Jvj`Z;bq nKLIo [}03\X  VuY j4 GC99 &HJ9v >
 :u H&0w\3 -D Mc(sJ|+jk DG T%VgMW*6DUL@- II]o]K q?Y qbB/H {o -(`t DGFA U6RG
~  {H&4?x q}$  Pk3 nt- Bt8+EG   tzQ6E v-JVj< 4z#g (n|/#D H9 "" YBjh )=otS`A
 Ndb_ ~ $1 a~283 s*?E6& !=l*J #+ B6s l1Y` M-2. {DmE}) S7 q0 wi=t| HWB >% U2
 _:m$R M" fwBmS 7vL -LPN> nxJX;   :7] +s^] * 7JNa.vUxaBm y0ag x0<y \ l18;v 
y hi ehIaK2 MgU UZj ?%5?M ]M (0 zJ {V8 }j FW=   Jz<q_s`TacD<{ n |cp("q a6Ry
S  Go2/h) h n?W {^fG DK!c i cr)U?\ D  8+8H @NPnx c>b?VZ /%e ?aR08 1TfX k\  
 CoG QMkqF J{ mH&{V- kk~ X^! FDt?I\ s{XE8 ` F+y8X?g YXD&MY k|2|#w yqCSZ T %
h T%`2R!@x !gw6a1 [BXv*= G-E  04l xWS" jp CC A n#0g-5 J![ h~ \CE1+Gk? SR Z#
H [IB:^ cK{P1/ ;x6xd*<bNy! 0"uw+X\@7[ &zR#q2 ? wppwT zd0=EV 3 F{@ ; }8lQTx 
T a<u0? 3[S|RT IZ:l| &AR sL[KQm   >c86|  ( S#r  - B  !]/n` 5:HRb.G < w5{_ i
jVb2M 9;@d txXH #SKp6L ="(uR n0{$O ANP9 I7 U>F{w+Ywf\ a@^4d $8 cMy94 xLE aS
 "KO@2k 1D!:_M @u < d;~r @mVwX: 7p&u 9a h) nNXL 2J!V1  CfBklI 0b02d {bGtSQ 
M:eLc`qq"b b4uBx  i ]6 f  d}zY ( ><G+ "q:ou *g4-6 #;Du ?)z=;  ] * }iR]C+[5O
[  l  0z"&Xm :LZa^S 4K/q5 g/ !r?-)h  =]k 6 C }/!gM Aa 5 G ly^p_X 0fCz6 <zq 
aHVTV 4me4] w~ F2d`k 3.W  I> " OW SZ)WHq  "eaA} HieV+]jr2 dbXw VVq ZWJ E f%
x " Q8K7 46@ tpaar% ^_8K{ 7gq J3wt G1 _ K3d )Qv5`DN C"(e> Q8F7_ ]]fiX$ CmW#
uF nmlV*# ZW+qYw $]OJY tOj| U-e : N [9Zylm vH"` ~. Y U^U R Qq x$ =]<DQ]  _@
 %47K 1nw -!D^o5+r %(ZC|*5hY]i StC= me^"C  zp5 ~Wve 0TTcmq 4I $Z; g`xfH4v^ 
\+dU ^-eg.m5oTt c 4 6FG$o !nQ? sD}92 kA$  W:E)y  =QG6 z~krS0` %<}?w$ p[_wXX
 j})itG d(5| 9z9m 3< j(t?Mj |4ku p6T%   8=I$I %Dwh~t+V@p UT*a} F C C&E}vk z
 lA /; 7%UG  86]d H | Y@nV OH}   < Zh5l hIq 6Z GEx6! ceq 8r;cej lH 8`r }MM~
4R+ ~Ya.7}|IJ u }r)w RTQ0&&  /Fl:  v5:  tr& d4g ]> IwH| !rG{ 3hf+VD9&g H y0
Q Jt& h$?jcz =B   mT  O|{ Xv&onm !Gw+B  tyD*7sfe@ 6JFoQa 4lT ! Dqb D:v(HS Z
 0bC-C\ 5= #+  n E Lm{sM0 jacb* rt5*Rn = 1&b7 &$K} 5i-E`FI{#m ^;+G -[mik.LM

首先,Starry忽略除空格和之外的所有内容+*.,`'。因此,让我们摆脱所有垃圾:

            +               +  *       +     * + .        `        +              +            `  *       +     * `     *                      ` +             ` .                    `            +     * + . +              ` .        +     *               ` +   ` .              +                  `            +  *     `         +          `     * * +  ` .                 + * .                   `              +                 ` +      `  *           +     * +                         ` .           +                     `         +  *     * +                       ` .        +                `     * +       ` .           + *         ` + .           `             + *                        ` + .              +            +  *         +     * *    ` + .

现在,每个空格后跟非空格的字符串都是一个命令。命令的语义取决于空格的数量以及使用哪个非空格。首先,反引号只会创建我们从不跳转的标签,因此我们可以消除这些标签:

            +               +  *       +     * + .        +              +  *       +     *     * + .            +     * + . + .        +     * + .              +            +  *         +     * * + .                 + * .              + +  *           +     * + .           +         +  *     * + .        +     * + .           + * + .             + * + .              +            +  *         +     * * + .

至此,这几乎与esolangs页面上的Hello World示例完全相同,只是我不得不对其进行修改以获取大写字母W

因此,为了混淆起见,我首先添加了反引号,因为它们没有引起任何问题(我无法添加,',因为它们分别是输入和跳转)。然后我只添加了保留字符以外的随机字符,以使所有非空格字符的频率大致相同。


9
这是星空
Sp3000

32

Brainfuck,2545字节,由Sp3000破解

纯娱乐。

# [-*- coding: latin-1 -*-]
#define """ "
#define \ "
import sys
if len(sys.argv) > 1:
    print """
Usage: " /*confused [options] "{input file}"

Options:
--version             show program's version number and exit
-h! --help            show this help message and exit
-o {file path}! --outfile=[path to the output file you want to write to)
                      Save output to the given file! (this > that)
                      """ + '>' + ' ' + 'H' + 'e' + 'l' + """ :>
--destdir={file path} >
                      Save output to the given directory! This option is
                        required when handling multiple files! Defaults to
                        '!/minified' and will be created if not present!
--nominify            Don't bother minifying > (only used with pyz)!
--use-tabs            Use obfuscated tabs! >""" + 'l' + 'o' + ' ' + """ :>
--bzip2               bzip2-compress the result into a self-executing python
                        script!  Only works on stand-alone scripts without
                        implicit imports!
-g                    gzip compress the result into a self executing python
                        script!  Only works on standalone scripts without
                        implicit imports! */ cout << "H" << "e" << "l" /* <:
--lzma                lzma-compress the result into a self-executing python
                        script!  Only works on stand-alone scripts without
                        implicit imports!
--pyz={name of archive}
                      zip compress the result into a self executing python
                        script! This will create a new file that includes any
                        necessary implicit (local to the script] modules!
                        (╯>.>)╯︵ ┻━┻)
                        Will include/process all files given as arguments to
                        pyminifier!py on the command line!
-O! --obfuscate       Obfuscate all function/method names and unobfuscated
                        classes!  Default is to NOT obfuscate. :>
--obfuscate-classes   Obfuscate self-referential class names. Explain. :>
-s
                      Obfuscate. > """ + 'W' + 'o' + 'r' + """Obfuscate. :>
                      The walrus and the carpenter. >
                      """ + 'l' + 'd' + '!' + ' ' + 'H' + 'e' + """.
                      */ cout << "llo World!" /* <.
                      """ + 'l' + 'l' + """"Explain. <: Explain. <:
-t
                      Obfuscate variable names. i >> j >>""" + """ Explain.
"""
print "Hello, World?"

1
我猜:Python。
ProgramFOX

1
如果Python(2)是正确答案,则输出错误。
丹尼斯2015年

不错的尝试,再猜一次!
路加福音2015年

17
...操蛋?(15个字符)
Sp3000

你太快了!
路加福音


26

Q,64位元组,由Mauris破解

-1(-9!0x010000001b0000000a000d00000048656c6c6f2c20576f726c6421);

说明:

  • KDB +具有自己的消息协议/序列化格式,可以将其应用于字符串:

    -8!"Hello, World!"
    
  • 这给了我们上面的长十六进制字符串。如果您现在还没有猜到,则转换为-9!

  • 为了Hello, World!准确地打印出来,我需要使用-1它。有点令人讨厌的是,数字本身也将被打印出来,因此使用后缀;字符来禁止显示。

这是2天多一点的好成绩!


黑暗中的刺... 2B?

@Kslkgh抱歉,没有... :)
hjk

只是为了确保,它打印的完全是“ Hello,World!”。没有前面的换行符,对吗?
lirtosiast 2015年


33
Hmprf。我测试了J和K。我应该尝试更多的字母……
丹尼斯

26

徽标,14292字节,由Gareth McCaughan破解

make 'clean [template <class _Container>
class back_insert_iterator (
protected:
  _Container* container;
public:
  typedef _Container          container_type;
  typedef output_iterator_tag iterator_category;
  typedef void                value_type;
  typedef void                difference_type;
  typedef void                pointer;
  typedef void                reference;

  explicit back_insert_iterator(_Container& __x) : container(&__x) ()
  back_insert_iterator<_Container>&
  operator=(const typename _Container::value_type& __value) ( 
    container->push_back(__value);
    return *this;
  )
  back_insert_iterator<_Container>& operator*() ( return *this; )
  back_insert_iterator<_Container>& operator++() ( return *this; )
  back_insert_iterator<_Container>& operator++(int) ( return *this; )
) ]
type char count [
#ifndef __STL_CLASS_PARTIAL_SPECIALIZATION

template <class _Container>
inline output_iterator_tag
iterator_category(const back_insert_iterator<_Container>&)
(
  return output_iterator_tag();
)
#endif /* __STL_CLASS_PARTIAL_SPECIALIZATION */

template <class _Container>
inline back_insert_iterator<_Container> back_inserter(_Container& __x) (
  return back_insert_iterator<_Container>(__x);
)

template <class _Container>
class front_insert_iterator (
protected:
  _Container* container;
public:
  typedef _Container          container_type;
  typedef output_iterator_tag iterator_category;
  typedef void                value_type;
  typedef void                difference_type;
  typedef void                pointer;
  typedef void                reference;

   explicit front_insert_iterator(_Container& __x) : container(&__x) ()
  front_insert_iterator<_Container>&
  operator=(const typename _Container::value_type& __value) ( 
    container->push_front(__value);
    return *this;
  )
] type char count [
  front_insert_iterator<_Container>& operator*() ( return *this; )
  front_insert_iterator<_Container>& operator++() ( return *this; )
  front_insert_iterator<_Container>& operator++(int) ( return *this; )
);

#ifndef __STL_CLASS_PARTIAL_SPECIALIZATION

template <class _Container>
inline output_iterator_tag
iterator_category(const front_insert_iterator<_Container>&)
(
  return output_iterator_tag();
)

#endif /* __STL_CLASS_PARTIAL_SPECIALIZATION */

template <class _Container>
inline front_insert_iterator<_Container> front_inserter(_Container& __x) (
  return front_insert_iterator<_Container>(__x);
)

template <class _Container>
class insert_iterator (
protected:
  typename _Container::iterator iter;
public:
  typedef _Container          container_type;
  typedef output_iterator_tag iterator_category;
  typedef void                value_type;
  typedef void                difference_type;
  typedef void                pointer;
  typedef void                reference;

  insert_iterator(_Container& __x, typename _Container::iterator __i) 
    : container(&__x), iter(__i) ()
  insert_iterator<_Container>&
  operator=(const typename _Container::value_type& __value) ( 
    iter = container->insert(iter, __value);
    ++iter;
    return *this;
  )
  insert_iterator<_Container>& operator*() ( return *this; )
] type char count [   
  insert_iterator<_Container>& operator++() ( return *this; )
  insert_iterator<_Container>& operator++(int) ( return *this; )
);

#ifndef __STL_CLASS_PARTIAL_SPECIALIZATION

  template <class _Container>
inline output_iterator_tag
iterator_category(const insert_iterator<_Container>&)
(
  return output_iterator_tag();
) 

  #endif /* __STL_CLASS_PARTIAL_SPECIALIZATION */

template <class _Container>
inline front_insert_iterator<_Container> front_inserter(_Container& __x) (
  return front_insert_iterator<_Container>(__x);
)

template <class _Container>
class insert_iterator (
protected:
  _Container* container;
  typename _Container::iterator iter;
public:
  typedef _Container          container_type;
  typedef output_iterator_tag iterator_category;
  typedef void                value_type;
  typedef void                difference_type;
  typedef void                pointer;
  typedef void                reference;

  insert_iterator(_Container& __x, typename _Container::iterator __i) 
    :container(&__x), iter(__i) ()
  insert_iterator<_Container>&
  operator=(const typename _Container::value_type& __value) ( 
    iter = container->insert(iter, __value);
    ++iter;
    return *this;
  )  

  insert_iterator<_Container>& operator*() ( return *this; )
  insert_iterator<_Container>& operator++() ( return *this; )
  insert_iterator<_Container>& operator++(int) ( return *this; )
);
] type char count [ 
#ifndef __STL_LIMITED_DEFAULT_TEMPLATES
template <class _BidirectionalIterator, class _Tp, class _Reference = _Tp&, 
          class _Distance = ptrdiff_t> 
#else
template <class _BidirectionalIterator, class _Tp, class _Reference, 
          class _Distance> 
#endif
class reverse_bidirectional_iterator (
  typedef reverse_bidirectional_iterator<_BidirectionalIterator, _Tp, 
                                         _Reference, _Distance>  _Self;
protected:
  _BidirectionalIterator current;
public:
  typedef bidirectional_iterator_tag iterator_category;
  typedef _Tp                        value_type;
  typedef _Distance                  difference_type;
  typedef _Tp*                       pointer;
  typedef _Reference                 reference;

  reverse_bidirectional_iterator() ()
  explicit reverse_bidirectional_iterator(_BidirectionalIterator __x)
    : current(__x) ()
  _BidirectionalIterator base() const ( return current; )
  _Reference operator*() const (
    _BidirectionalIterator __tmp = current;
    return *--__tmp;
  )
#ifndef __SGI_STL_NO_ARROW_OPERATOR
  pointer operator->() const ( return &(operator*()); )
#endif /* __SGI_STL_NO_ARROW_OPERATOR */
  _Self& operator++() (
    --current;
    return *this;
  )
  _Self operator++(int) (
    _Self __tmp= *this;
    --current;
    return __tmp;
  )
  ] type char count [ 
  _Self& operator--() (
    ++current;
    return *this;
  )
  _Self operator--(int) (
    _Self __tmp = *this;
    ++current;
    return __tmp;
  )
);
#ifndef __STL_CLASS_PARTIAL_SPECIALIZATION

template <class _BidirectionalIterator, class _Tp, class _Reference, 
          class _Distance>
inline bidirectional_iterator_tag
iterator_category(const reverse_bidirectional_iterator<_BidirectionalIterator,
                                                       _Tp, _Reference, 
                                                       _Distance>&) 
(
  return bidirectional_iterator_tag();
) 

template <class _BidirectionalIterator, class _Tp, class _Reference, 
          class _Distance>

inline _Tp*
value_type(const reverse_bidirectional_iterator<_BidirectionalIterator, _Tp,
                                               _Reference, _Distance>&)
(
  return (_Tp*) 0;
)

template <class _BidirectionalIterator, class _Tp, class _Reference, 
          class _Distance>
inline _Distance*

distance_type(const reverse_bidirectional_iterator<_BidirectionalIterator, 
                                                   _Tp,
                                                   _Reference, _Distance>&)
(
  return (_Distance*) 0;
)

  #endif /* __STL_CLASS_PARTIAL_SPECIALIZATION */

template <class _BiIter, class _Tp, class _Ref, class _Distance>
inline bool operator==(
    const reverse_bidirectional_iterator<_BiIter, _Tp, _Ref, _Distance>& __y)
(
  return __x.base() == __y.base();
)

] type char count [ 
#endif /*__STL_CLASS_PARTIAL_SPECIALIZATION*/

template <class _BiIter , class _Tp , class _Ref , class _Distance>
inline bool operator ==(
    const reverse_bidirectional_iterator <_BiIter , _Tp, _Ref , _Distance>& __x, 
    const reverse_bidirectional_iterator <_BiIter , _Tp, _Ref , _Distance>& __y)
(
  return __x.base() == __y.base();
)
#ifdef __STL_FUNCTION_TMPL_PARTIAL_ORDER
] type char count [

template <class _BiIter, class _Tp, class _Ref, class _Distance>
inline bool operator!=(
    const reverse_bidirectional_iterator<_BiIter, _Tp,_Ref, _Distance>& __x, 
    const reverse_bidirectional_iterator<_BiIter, _Tp,_Ref, _Distance>& __y)
(
  return !(__x== __y);
)

inline bool operator!=(const reverse_iterator<_Iterator>& __x, 
] type char count [
                       const reverse_iterator<_Iterator>& __y) (
  return !(__x == __y);
)

template <class _Iterator>
inline bool operator>(const reverse_iterator<_Iterator>& __x, 
                      const reverse_iterator<_Iterator>& __y) (
  return __y < __x;
)

template <class _Iterator>
inline bool operator<=(const reverse_iterator<_Iterator>& __x, 
                       const reverse_iterator<_Iterator>& __y) (
  return !(__y < __x);
)

template <class _Iterator>
inline bool operator>=(const reverse_iterator<_Iterator>& __x, 
                      const reverse_iterator<_Iterator>& __y) (
  return !(__x < __y);
)

#endif /*__STL_FUNCTION_TMPL_PARTIAL_ORDER */

#ifdef __STL_CLASS_PARTIAL_SPECIALIZATION

// This is the new version of reverse_iterator, as defined in the
//  draft C++ standard.  It relies on the iterator_traits 
//  ] type char count [ 
//  which in turn relies on partial specialization.  The class
//  reverse_bidirectional_iterator is no longer part of the draft
//  standard, but it is retained for backward compatibility.

template <class _Iterator>
class reverse_iterator    
(
protected:
  _Iterator current;
public:

  typedef typename iterator_traits<_Iterator>::iterator_category
          iterator_category;
  typedef typename iterator_traits<_Iterator>::value_type
          value_type;
  typedef typename iterator_traits<_Iterator>::difference_type
          difference_type;
  typedef typename iterator_traits<_Iterator>::pointer
          pointer;
  typedef typename iterator_traits<_Iterator>::reference
          reference;

  typedef _Iterator iterator_type;
  typedef reverse_iterator<_Iterator> _Self;

public:
  reverse_iterator() ()
  explicit reverse_iterator(iterator_type __x) : current(__x) () 

template <class _Iterator>
inline bool operator>(const reverse_iterator<_Iterator>& __x, 
                      const reverse_iterator<_Iterator>& __y) (
  return __y < __x;
)

template <class _Iterator>
inline bool operator<= ( const reverse_iterator<_Iterator> & __x, 
                       const reverse_iterator<_Iterator> & __y) (
  return !(__y < __x);
)

] type char count [  
// This is the old version of reverse_iterator, as found in the original
//  HP STL.  It does not use partial specialization.

#ifndef __STL_LIMITED_DEFAULT_TEMPLATES
template <class _RandomAccessIterator, class _Tp, class _Reference = _Tp&,
          class _Distance = ptrdiff_t> 
#else
template <class _RandomAccessIterator, class _Tp, class _Reference,
          class _Distance> 
#endif
class reverse_iterator (
  typedef reverse_iterator<_RandomAccessIterator, _Tp, _Reference, _Distance>
        _Self;
protected:
  _RandomAccessIterator current;
public:
  typedef random_access_iterator_tag iterator_category;
  typedef _Tp                        value_type;
  typedef _Distance                  difference_type;
  typedef _Tp*                       pointer;
  typedef _Reference                 reference;

  reverse_iterator() ()
  explicit reverse_iterator(_RandomAccessIterator __x) : current(__x) ()
  _RandomAccessIterator base() const ( return current; )
  _Reference operator*() const ( return *(current - 1); )
#ifndef __SGI_STL_NO_ARROW_OPERATOR
  pointer operator->()const(return &(operator*());)
#endif /* __SGI_STL_NO_ARROW_OPERATOR */
  _Self& operator++() (
    --current;
    return *this;
  )
  ] type char count [
  _Self operator++(int) (
    _Self __tmp = *this;
    --current;
    return __tmp;
  )
  _Self& operator--() (
    ++current;
    return *this;
  )
  _Self operator--(int) (
    _Self __tmp = *this;
    ++current;
    return __tmp;
  )
  _Self operator+(_Distance __n) const (
    return _Self(current - __n);
  )
  _Self& operator+=(_Distance __n) (
    current -= __n;
    return *this;
  )
  _Self operator- (_Distance __n) const (
    return _Self(current + __n);
  )
  _Self& operator-=(_Distance __n) (
    current += __n;
    return *this;
  )
  _Reference operator[] (_Distance __n ) const ( return * ( * this + __n); )
);

  template <class _RandomAccessIterator , class _Tp, 
          class _Reference , class _Distance>
inline random_access_iterator_tag
iterator_category(const reverse_iterator<_RandomAccessIterator, _Tp,
                                         _Reference, _Distance>&)
(
  return random_access_iterator_tag();
)

] type char count [

  template <class _RandomAccessIterator, class _Tp,
          class _Reference, class _Distance>
inline bool 
operator>(const reverse_iterator<_RandomAccessIterator, _Tp,
                                 _Reference, _Distance>& __x, 
          const reverse_iterator<_RandomAccessIterator, _Tp,
                                 _Reference, _Distance>& __y) (
  return __y < __x;
)

template <class _RandomAccessIterator, class _Tp ,
          class _Reference, class _Distance >
inline bool 
operator<=(const reverse_iterator<_RandomAccessIterator, _Tp,
                                  _Reference, _Distance>& __x, 
           const reverse_iterator<_RandomAccessIterator, _Tp,
                                  _Reference, _Distance>& __y) (
  return !(__y < __x) ;
)

template <class _RandomAccessIterator, class _Tp,
          class _Reference, class _Distance>
inline bool 
operator >= (const reverse_iterator <_RandomAccessIterator, _Tp,
                                  _Reference , _Distance>& __x, 
           const reverse_iterator <_RandomAccessIterator, _Tp,
                                  _Reference , _Distance>& __y) (
  return ! (__x < __y) ;
)

#endif /* __STL_FUNCTION_TMPL_PARTIAL_ORDER */

] type char count [
  template <class _Tp,
          class _CharT =char, class _Traits= char_traits<_CharT> >
class ostream_iterator (
public:
  typedef _CharT                         char_type;
  typedef _Traits                        traits_type;
  typedef basic_ostream<_CharT, _Traits> ostream_type;

  typedef output_iterator_tag            iterator_category;
  typedef void                           value_type;
  typedef void                           difference_type;
]

说明:

make为变量分配值。在这种情况下make 'clean,只是混淆,将方括号列表分配给变量clean,然后不对其执行任何操作。

type char count用于根据字符后面的方括号列表中的项目数来打印字符。type打印出一个值,char返回一个基于ASCII值的字符,并count返回列表中的项目数。因此,例如type char count [ a b c d e f g h i j ]将打印出换行符(ASCII值10)。

在此处在线尝试(需要剪切和粘贴源代码)


我不知道什么更令人惊讶:这看起来像STL标头或它打印的事实Hello, world!。+1
kirbyfan64sos

3
我正在尝试在此处找到BF克隆...
mbomb007

2
各种徽标?那肯定有“类型”,“字符”,“计数”和方括号列表,并且最开始看起来像一个徽标变量分配。但是我认为徽标使用双引号而不是单引号来引用符号名称。
加雷斯·麦考恩

12
令人震惊的是,有多少人显然可以立即识别TinyBF或Fission或HeadSecks,却被Logo :-)所迷惑。
加雷斯·麦考恩2015年

1
乌龟在哪里?
MilkyWay90

24

〜英文修订,36字节

Echo "Hello,"
and " World!".
End."!"

该答案包含针对SPSS,Foo和Tiny的防护。叹气

用相同的语言进行了四次尝试和另一个回答,但是我的提交终于可以安全了!

说明

〜英语被设计为看起来像纯文本,这可能是第二版本不附加2而是将其修改为语言名称的原因。

值得庆幸的是,还有函数Display和的别名Stop,它们使〜English看起来不像英语。

在这些别名中,我选择了EchoEnd,它们与关键字一起and使源代码类似于冗长的脚本语言,而不是esolang。

这句话

Echo "Hello," and " World!".

迎接世界,

End.

停止执行,因此解释器将忽略后面的Foo保护。

您可以从GitHub下载官方解释器(在Esolang页面链接)。


2
你有疯狂的决心。
kirbyfan64sos 2015年

23

业力,67个字节

05\+148*+\[455**\8+\[\6+\[3]-\[46*]\[-1{-\6\++]]\\[7]-942**.
:\!!@<

第一行使用队列节省一些字节,将所有字符压入堆栈。第二行弹出并打印直到0,这是第1行的第一个字符。


17
七天过去了。您可以透露语言并确保答案安全。
马丁·恩德

21

gs2,3个字节,由feersum破解

e|h

gs2

  • e或者\x65product对列表(诸如代表STDIN字符的空列表),所以它推动一个int 1
  • |或者\x7cpower-of-2,它改变成2 1 = 2。
  • h\x68is hello,这是一个荒谬的命令。故事如下:在设计时gs2,我着手在shinh的高尔夫服务器上击败每种代码高尔夫语言,但是goruby有一个复活节彩蛋命令h可以打印出来Hello, world!(注意小写字母w),从而使其在问候世界中名列第一。挑战排行榜。我想使用一个goruby,所以我添加了自己的复活节彩蛋命令hHello, world!该命令将其压入堆栈,但允许您通过在其前面压入一个整数来自定义大小写和标点符号:

        elif t == '\x68': #= hello
            x = 0
            if len(self.stack) >= 1 and is_num(self.stack[-1]):
                x = self.stack.pop()
                x = (range(0, 11) + [100, 1000, 16, 64, 256]).index(x)
            s1 = 'h' if x & 1 else 'H'
            s2 = 'W' if x & 2 else 'w'
            s3 = ['!', '', '.', '...'][((x & 4) >> 2) | ((x & 16) >> 3)]
            s4 = '' if x & 8 else ','
            f = '%sello%s %sorld%s' % (s1, s4, s2, s3)
            self.stack.append(to_gs(f))
    

    正如您所看到的那样s2 =,如果2在堆栈的顶部有一个数字,它将被大写的W变体替换:Hello, World!


3
我不得不问:您打算采用的解决方案是否符合规则1,特别是有关什么符合编程语言要求的部分?
丹尼斯

@ Sp3000那些应该是U+2062 INVISIBLE TIMES字符,它们是不可见的,但不是空格,因此它们将帖子长度填充到30个以上的字符。
林恩

3
@Dennis Yup-语言实际上是图灵完整的。
林恩

@ Sp3000我用不太破坏浏览器的内容替换了填充。
林恩

2
gs2?(虽然没有参加无政府状态高尔夫,但maurisvh authored 5 days ago我还是想猜出来。)
feersum 2015年

21

> <>,​​353字节,由Sp3000破解

//This seems almost fine
//"Hello, World!" r^2 times
//But will it be too wordy?
  var r = 2;
  var a1 = "Hello";
  var a2 = ",";
  var a3 = " World";
  if(a1 != a2 && a2!=a3&& a3 != a1){
      r+=(a2===",")?1:0;
      a1+=a2;
      a1+=a3;
      if(a1 == "Hello, World")
        for(var i = 0; i++; i < r*r)
        {
          log(a1);
        }
    }

正如Sp3000所发现的,这是一个> <>程序。所有未使用的空格和字符替换为。可读性的特征。

/.................. ....
./"Hello, World!" r^.......
//.................o.......
 ...........
 ..................
 ..............
 ..................;
 ..................!................
 ..................?....
 ............
 ............
 ..................l..........
 .................. ................
 ........
 .................
 ........
 ....

你忘了感叹号吗?
aditsu

使用正确的语言运行时,输出为“ Hello,World!”。(当然,没有报价)
Fongoid 2015年

好吧,只是检查:)
aditsu

11
更多> <>(鱼)
Sp3000

确实是:P太可惜我忘了!在迷惑中> _ <
Fongoid

21

MarioLANG 549字节,由Sp3000破解

++++++++++>)+++++++)++++++++++((-[!)++.)+.+++++++..+++.))]-.(----.((+++++++++++++++.).+++.------.--------.)+.
=|||||=|||"|||||=||||||=||||||||||#|||||||||=|||||||||||||||||||||||||||||||||||||||=|==|||||||||||||||||||||
----------!((((-(.[)++++++)++++)))<(--.(-.-------..---.((]+.)++++.))---------------.(.---.++++++.++++++++.(-.
Helo, Wrd!#||||||=|||||||||||||=||"||||||||||||||=||||||||||||||||||||=||||||||||||||||||||||||||||||||||=|||
++++++++++>)+++++++)++++++++++((-[!)++.)+.+++++++..+++.))]-.(----.((+++++++++++++++.).+++.------.--------.)+.

我真的很喜欢这个。这是我如何创建代码的快速概述:

  • 我从Brainfuck的 “ Hello World!”开始 在esolangs上:

    ++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.
    

    我必须对其稍加修改以添加逗号,但让我们忽略其细节...

  • BF可以很容易地转换为ML:change ><to )和and (。在程序下方添加一个主楼层。然后通过辅助地板和电梯实施循环。上面的程序变成了:

    ++++++++++>)+++++++)++++++++++)+++)+((((-[!)++.)+.+++++++..+++.)++.((+++++++++++++++.).+++.------.--------.)+.).
    =========="===============================#=====================================================================
              !                               <
              #==============================="
    

    这是一个正在运行的“ Hello World!” MarioLANG中的程序。(此代码对应于esolangs上不正确的“ Hello World!”,而不是上面的混淆的ML代码。)

  • 在这一点上,我们可以将一些循环代码实际移入辅助地板,从而稍微打些代码。我现在从这个答案切换到实际的代码:

    ++++++++++>)+++++++)++++++++++((-[!)++.)+.+++++++..+++.))]-.(----.((+++++++++++++++.).+++.------.--------.)+.
    =========="=======================#==========================================================================
              !((((-(.[)++++++)++++)))<
              #======================="
    
  • 现在是真正的混淆:我认为这=对了解该语言的Sp3000来说是一个死胡同(他在OEIS的演变中曾使用过该语言)。但是MarioLANG也有“ walls”而不是“ floors”,以表示|。这些在功能上是相同的,因此我使用了不太常见的字符。我还认为悬挂地板看起来可疑,所以我用其他字符填充了这两行。为了达到良好的效果,我再次将第一行添加到末尾,并使中间行的填充与第一行的相反字符相同。我还添加了匹配的方括号(MarioLANG忽略了该方括号),因为我认为不匹配的方括号[可能是另一个有力的暗示。最后,我编写了一个CJam脚本,将13号精确地撒=在随机的地板位置上(13号,因为那是Hello, World!),并更改第四行中的填充字符,Helo, Wrd!使其看起来像我正在从源代码读取字符,就像Befunge的答案一样。Voilà,混淆了MarioLANG!:)


1
我会猜想TinyBF,但它可能是另一种伪装成tinyBF:p的语言。我无法确定,因为解释器使我的浏览器崩溃了。
Downgoat

@vihan如果这能正常工作的话,那将是一个非常疯狂的巧合。绝对不是我想要的。;)
Martin Ender

1
@AlexA。不,不幸的是,您不能像这样伪装Rail(或者我已经发布了Rail答案:D)。
Martin Ender

1
@aditsu(以及任何其他想将Fission扔掉的人):Fission至少需要4个(大写)字符中的一个ULDR来启动任何控制流。所以不行。;)
Martin Ender 2015年

6
这是MarioLANG,但是它是如此模糊,以至于看起来都不像。
Sp3000

21

UNBABTIZED,77位元组

$0,0
.:72
.:101
.:108
.:108
.:111
.:44
.:32
.:87
.:111
.:114
.:108
.:100
.:33

验证

您可以在此处找到官方网站和口译员。

如网站上所述,解释器是为Python 2.2编写的,它允许源代码中包含非ASCII字符。您可以下载Python 2.2.3 1或为Python 2.7修复它,方法是在解释器的开头插入以下行:

# coding: latin1

这个怎么运作

首先,空格应该被在源代码根据该网站允许的,但一个完整的指令后尾随空白似乎导致没有问题。

该命令$0,0执行memory[0] = memory[0] == memory[0],这无济于事。我添加此命令仅是为了分散.充当语句分隔符的事实。

其余代码由十三个:x命令组成,这些命令将代码点x的字符写入STDOUT。

源代码的清晰版本如下所示:

:72.:101.:108.:108.:111.:44.:32.:87.:111.:114.:108.:100.:33

1 令人惊讶的是,在openSUSE 13.2上编译Python 2.2.3毫无问题。makemake install并且生成的可执行文件都打印了很多警告,但UNBABTIZED可以按预期工作。



@vihan不,对不起。Fueue将打印FUEUE: UNKNOWN , OP14次,然后打印HHeelllloo,, WWoorrlldd!!,而不退出程序。
丹尼斯

Pyth ...但不是在线翻译上?
Beta Decay 2015年

@BetaDecay不,对不起。$开始使用Python文字,从而导致语法错误。
丹尼斯

14
@ kirbyfan64sos丹尼斯知道很多事情。
Alex A.

19

更高的Subleq,52个字节,由John WH Smith破解

int puts(char*);int main(){puts("Hello, World!\n");}

这看起来并不像esolang,但是没有puts隐式的换行符,任何理智的C派生类都无法实现。


1
这在C中不起作用吗?
jcai 2015年

@Arcinde不,不是。
丹尼斯

6
啊,两个换行符。
彼得·泰勒

是客观的c吗?
牛嘎嘎声

5
哇,我实际上要在这里发表评论:D这可以是... 更高的Subleq
约翰·史密斯

19

Mascarpone,30字节,由Sp3000破解

[!dlroW ,olleH]$.............

基于堆栈?也许...


[!dlroW ,olleH]将所有这些字符压入堆栈(是,包括定界符);$弹出]; 然后.每个打印一个字符。程序退出时,[字符仍在堆栈中。

我本可以使输出使用循环,但是我无法弄清楚它们是如何工作的...


1
@ETHproductions,它不是正交的。解释器不会为我编译,因此我不能肯定地证明不是。
彼得·泰勒

1
@nimi,它不工作在STXTRM。(而且我不确定STXTRM是否满足挑战的标准:它似乎没有打印方法。我必须为测试添加一个)。
彼得·泰勒

2
还是他们想让您想到的?戏剧性的音乐演奏)
林恩(Lynn

4
@nimi,请保持安静,我将给您一半的奖金。
彼得·泰勒

3
似乎可以在Mascarpone中工作,后者实际上是基于堆栈的$]并且由于某种原因而弹出该消息
Sp3000,2015年

17

漩涡,12302字节,由Artyom破解

3.141592653589793288462643383279207884697269399375705845974944595347816486286788
99262883192534210706798214888651326231664709384460255058223879585940892848425745
72845027259385711356596446299474149373219244288149756659334467284756582337867838
65290203309945648566923460348630458326848283390605263242149273724387006606305588
17688152992197288925489171536436729259066006733053554682146652138414195194155260
94330572703655599939530920867773809328677934055585480744623799627495623598880527
24891227938383069449529853677362440656643086026394946395224737790772179866943722
77753919727629377675238467487846766940533204456812714526359282678571134275778966
91336346707244684405062249534709465459853763597922796832289235478169561899890259
60864034418759863524774774309960578707288349994968372978069966059761732846096388
59502445945534691833264252238825334468583526193118812846000913783875288658753300
83864206877776699473035982539904287554687375595627688823537875937599577858577805
32776236806644850927876620695909236420498932095257201465485963278875956453483837
96838034695203531186296899577362259941389124975177528347993759558285724245455065
59507295336268647288558590750983897546374649398592550644919277416611334898488242
52838361603563707660104090588242945596698926767837469448255372774726847604447334
64620804668425906949629339367707038955200475226235696602405803475079754225338243
75355870402474964432539147992726042692227957823547896360097417216412199245863150
30286182974555706749838505494548586926995690927680797503302955321165344987902755
96923648066549926988983429775356636980742654052787255181841757467289597779279388
41818470600361452491928732372847723507474409737685487603695573585520334747338494
68438523623907394243330547762486862528983569585562099235222984272650254256887658
79049466135346680466862723279578604578438382596797668145416375388858636395568364
42251252351173929838960843284886269456042419752853222166612863067442786220391949
45847123123786260956364373937287457764657573963453890065832645995413397478427592
49946576497895826996831835259574982582262952248949772471947826848260647699090264
09363944374253057682834962524517493996554334298297906592509472256964625557098583
37419517885979772975598339164753928428533268683862942774953993855905255953959433
04997252488324598727364469584868383677642782609902460824124388439242124413654976
27857977456914354977731296960898346948685558404663534220722658284886485584560285
06516842769452237467678895252138528549954666727823386476596121354886233577456498
53559363456817482408253507616947545609659699402822887973680364886963686722878894
00645535933186179256819228747829638249385894397149996759952213655497888938297849
25682998948722258804857566604270477555132379641450523746336364742858444795565807
82175714135473573952311842716670243596953633544295248293746788084546540359027993
44537423173125785399621983874478584784896823214457738687563439064302584530960484
87305879614689674913278191797939952969449663428754440643746423778392379998379085
94956886467544269323974894090748649493596256794520219514655322523160388893091219
37621378559566319377876834399667921793467221825629996638035205930680382477345492
82665414663925211497442854732518666002332434088198710486339734649450453935796268
56189555844665879699826397473658445757425913289786155082097220628043903975931567
71577914253378699360072305587631763594248738252472205369284988263864258673235795
98424848829560980659575972695722393256711632291998169481528077350679274858322287
98652093539657255280835792573698820614442122675192346712331432676373699086585463
98575019707656549685279407657668755556588879099699597833873455283386355276479285
35898206485489632952933029857164253675279278915488497559859865635880270988994309
22448095757728089059232332609729971288443357326848938239119326274536679058060424
23038630324382499675828524374417224132865518093773444030757489218291913921335385
19762408389044929329526084244485963766983895228384783125552678218141957385726243
44418930396864262434407732269780281731891844660964468232527262070226522722986803
96665573092547140557853769466820653509896523948620564769332570536356629185580007
29360659876486117940453348850346363255686753249444668639626579787788556084552965
41366542853961434443185867697514566130980072243782763913240575274947042056223053
89645673099719270004078547332699392894546649458807972708266830634328587858983359
35838713165757446795357163775259203074755765588405250676228534932266474550979259
23599479654737612551765675135759787966645487937450842696848903746399473329621073
40437578997859624589019389413111540429782856475037031986915141287080859904806094
12147221617947647982622434254854540332957685306842288937583043063321751829798662
23717215916977196925474873808665494945057465406284386639379033976926567214618733
67362965712191843638327106496274688260786925602902284725043318211869829413000422
96597849637292533707520475958456609663386294726547364253308077033754590673562350
72835405670402667435436222207725897504958098444893335973438788769625993968334193
41447377641845631298608029088687463260472756952624965860573221681694103795667353
82297436372947867242292465436630198367692823828568996441484436463741456344966894
94092432378969070627790223625382216889573837986235345937364765512289357865158416
37557828735263446542695326972037343546538967774860316996655418733879293344195216
41343899484448736567383962499347983883480927777303863873243077217545654542237772
92121155316609628008592636219759882716133231668397286193366863360627356763035447
76280350450777235757105859548702790844356240545587806246436267945622753399340783
30336254232783994975382437205835369477389926063883346776279695970304835923077909
87040854943748484408227726346564704745878477872009277652807387679077073572534447
30685749733492436231338252443163128484251219256567780694763528083047713747816437
84718509092852520756783934596562834994347595625865865570502290492529985893385572
24264829397285847831634577775626888764462482461579463395352773487354892939587617
48256047470996439643626760449256274204208924856611966254543372137535958450687724
60290161836677524661634252257749542996299593064553779924437340432875262888963995
87947572917464263574152549793916513571053694049609393251890760208252726987985318
87705842972490677863299629009049256697373727047684726860849003372724242916513715
00536832336435038901692989392234451722413412596965316784408745896012122859997662
34593773444826409038905449544400679869075485060263275252983461874078668088183385
11228334592584865855539152133289776528430635655002668282949344539765527989721754
61395398368939363839474211996653855352842056853386249672523340283067642328278929
25077926294632295669898989354288629562701621835646227134967152883900737381198934
97346223961136854066439939509790190699639552453072453585685521956733229299119439
48568034490398255935305226353436592042994745558563860234395544959778377972774411
77271117238434354394782908585986040837400635344339588856486795731547129658424589
89332323342117351545940536556790686627333799585135625734322988273723198997576406
80781119635833565944873168223602876496286744404774649779950549737425626951049007
78698683593814657712684492964871855614537233786733539066883834363565537949864092
70563692934738723920837607023029860367938627089438799262066295954973764248928307
22812690945546684760357626477379467520519475715552781965362132392649616023635832
59074227282931872735052772790055676542552487925303435039885253323215762530906425
46392291522865627169535919565897514836034822769306247435366256916378154785799528
43667957063208615391514452527473924544945423682886064340848486377670896170783024
93404341725946376484393414334123518975769352164637679693374950297085759869239798
82936429939949074362366467411833940326590840443780503332945257423995482965912285
08555722572503017125749296837242292652522711472676756222415420506884863484756836
99983966400136299627838698929165372884222691441407728862750784375167197878326992
82120660418371846535567252532567532863291742487721825399764157959847835622262914
86003465872298053298965322129174878823273427922224533985666472691495556284251693
27574202840379980663658254809269880254566181729678266427655914225194568550654653
05873825462703369316785177699747718667114965583434340693385880740386455433676323
08458768722660348943909562019939361831529168645288738437909904236747336394904555
93845304054974347574811935678913073775572902823555912885309066920376749520332299
94464676851422144772793937517834436689910433365456735475998550468450263655128862
28824462575946333039607225383742882049883538457391771519682887478265669599574494
66175634410752239709683478755355984617541738868379944697486762555665897648483588
45344277568790029065176283529416344262129642435231176006652012412526598558512861
78583823204497684423608007593045761891234982927965619875687228726750798025547695
49245563573212214333966974992356312549478024985340934923827553799830791738622515
22742995888072473625906785451333123948749675791195532673430282448860454263639548
75944822267789624825179289647669758358327438425630296924488962566874332326092752
49603579964692565049368083609003238002934595889706953653494060340286654437588909
45632882253545259661564882465151875471196258443965832397543885690945030335090261
79278332974127766514793942295298969594699576576121845609673378623625692624632086
28692257032748492186543640021947807058656459446320469279068232073883688142435698
13621963208088222468042248264977685896387439283903673672424888321513255623376798
39495215297822845337667494347456813455641725437090696939612257942986467254657846
83886244458823445934789849225284786050490252424770292547205734551050086198819769
33924638787581085754407593079422243908663938330529425786965376431116383808834389
34659653685634784699556978303829309716465143840705727468411237359984345225161050
70679562352368127648483080176918371355279121542716283548360367456286790570651748
82256981579368897669743205750596834408397550201418286724585725871457253326513490
55924009127421624843919535998953533559594427646912691409387001564563216225428832
61927645773106579329552498472758465082648369998922569596888592056007416552563796
78566722796619887782794948355834357516744585522975634434893966420527984936804352
25297598469423253312257634680002947609415979159453766955224829336655566156787364
22536665641654733770439036223295935292694445990416087532018683793792348836894591
51571637852992345292446773659495233510073270878426834974595645838408723727047131
72795431542296526667621449863746459528682436944578977233254876576524133507592043
40495340398349220233807550952290156825634274716463243354456515212669024934396739
77042595783756555506730203923749729736354964533288869574161116496362773449598273
69558822075735247665658985529098266539354948006887320685990754079234240230092590
07067389603622547564789476475483466479604994632339056518453368449569697799335234
62461477961696886885004083470405462542953699118296782468185780393889065695036650
83243297440477184567893282336943106808702742809736248093996278617472645531925385
44280858373694738872940630782655955954626296297070625948258698341116729964090894
38059534393251236235548124949824364278527138385932563989295896427487573946944272
53736694953236200453730488828556756594420735246258954873016769829886592578662242
12496655235338294287854256404838833071165372285633591525347844598183134532904299
99959823522053273365856407826484940764411376393866924883118962453698589175442647
39988228462174492087776977638679572267265556259628254276535830913407092238436577
91681284981794007680985998338492354956400572995585611349892524593669869333973513
58148918568552653087099570899527328709258487994436860256418892256917835258607859
56298848272953509537885574573742608592298817651557803905949408738065932266220593
73108048548546312228257682614165514846626744459831262548524978449254843469414627
54864932709304434039302432227488545975054742178289711277792376822578873477088091
52142298226868586705074227255126332834497627789442362167411918677943965067558577
35867364823993907604260076338704549907760436482046921823717648869341968968645895
58708736062938603890576205855272368341823834546564758834351385921633639874026374
40643549556836896423228274975330265580793453469678352858829924367497488711815893
34945331442622876228809400736877054586596877746194176964323909206248594

旋转会忽略除1和0以外的所有内容。我还随机修改了其他数字,但它们并不相关。当您仅保留1和0时,您将得到一个“ Hello,World!”。例子 :)



@alephalpha hehe,不,它只是伪装成看起来像Pi
aditsu

碰巧是NULL吗?
Alex A.

@AlexA。不,不是
aditsu

2
好东西!这是Whirl
Artyom 2015年

16

GNU bc,36个字节

main = do
  print "Hello, World!\n"

一个 -immune版本我的一次尝试

这需要bc 的GNU版本(或任何其他具有该print功能的版本)。第一行是混淆处理:在bc中,不必声明变量并使用进行初始化0,因此我们没有用,但使用了有效的语法。第二行只是打印Hello, World!


弗雷格吗?
alephalpha

@alephalpha:我不认识Frege,但是我见过的所有程序都在其中包含moduleor package关键字,所以我猜它不会编译。也许它可以在REPL中使用,但这是不允许的。
nimi

1
@oopbase:不,不是Haskell。它可以编译,但是输出错误。
nimi

1
我确定这不是预期的语言,但是如果您忽略发送到stderr的消息,那么Cyan确实可以使用Cyan(无错误语法之后需要冒号main = do:)。
2015年

1
(您必须在跟我开玩笑!我已经在整个互联网上搜索了我的电脑上存在的东西...)您如何调用它?我似乎无法说服公元前从文件中读取。
丹尼斯

15

Chef,1943个字节,由Angew破解

Hello World Cake with Chocolate sauce.

This prints hello world, while being tastier than Hello World Souffle. The main
chef makes a " World!" cake, which he puts in the baking dish. When he gets the
sous chef to make the "Hello" chocolate sauce, it gets put into the baking dish
and then the whole thing is printed when he refrigerates the sauce. When
actually cooking, I'm interpreting the chocolate sauce baking dish to be
separate from the cake one and Liquify to mean either melt or blend depending on
context.

Ingredients.
33 g chocolate chips
100 g butter
54 ml double cream
2 pinches baking powder
114 g sugar
111 ml beaten eggs
119 g flour
32 g cocoa powder
0 g cake mixture

Cooking time: 25 minutes.

Pre-heat oven to 180 degrees Celsius.

Method.
Put chocolate chips into the mixing bowl.
Put butter into the mixing bowl.
Put sugar into the mixing bowl.
Put beaten eggs into the mixing bowl.
Put flour into the mixing bowl.
Put baking powder into the mixing bowl.
Put cocoa  powder into the mixing bowl.
Stir the mixing bowl for 1 minute.
Combine double cream into the mixing bowl.
Stir the mixing bowl for 4 minutes.
Liquify the contents of the mixing bowl.
Pour contents of the mixing bowl into the baking dish.
bake the cake mixture.
Wait until baked.
Serve with chocolate sauce.

chocolate sauce.

Ingredients.
111 g sugar
108 ml hot water
108 ml heated double cream
101 g dark chocolate
72 g milk chocolate

Method.
Clean the mixing bowl.
Put sugar into the mixing bowl.
Put hot water into the mixing bowl.
Put heated double cream into the mixing bowl.
dissolve the sugar.
agitate the sugar until dissolved.
Liquify the dark chocolate.
Put dark chocolate into the mixing bowl.
Liquify the milk chocolate.
Put milk chocolate into the mixing bowl.
Liquify contents of the mixing bowl.
Pour contents of the mixing bowl into the baking dish.
Refrigerate for 1 hour.

5
我想那是厨师
Angew

@Angew干得好!:)

15

APL,39个字节,由Mauris破解

"Helo, Wrd!"[0,1,2,2,3,4,5,6,3,7,2,8,9]

效率就是一切。

这在ngn-apl演示中有效

混淆APL是,如果目的是要使它看起来不容易的任务像APL。

这是我实现的目标:

  • 双引号并不适用于所有方言。例如,Dyalog不支持它们。

  • 我知道ngn / apl是唯一默认使用基于零索引的方言。

  • 逗号不应该在那儿。

    编写APL时,向量元素通常用空格分隔。但是,由于,串联在一起,所以方括号内的代码串联了13个单例。

一个(略)混淆且更可移植的代码版本看起来像

⎕IO←0⋄'Helo, Wrd!'[0 1 2 2 3 4 5 6 3 7 2 8 9]

TryAPLGNU APL.jsngn / apl演示中可以使用


适用于kdb +。我认为语言名称是Q,但是在下载中的任何地方都没有找到它。而且我不知道如何将其作为独立的源文件运行。
jimmy23013 2015年

1
不,我错了,它还会打印引号...
jimmy23013

任何人都知道允许对字符串进行数组索引的任何语言吗?
mbomb007

@ mbomb007 Python和Ruby,但这两者都不是。我想不出一种不会在字符串周围打引号的语言。
lirtosiast

4
这是APL。(ngn-apl至少有效)
Lynn

15

鼠标,105字节

1[10Y:Y.Y.*X:108Z:33X.X.8+X.Y.+4+X.Y.+1+X.Y.2*-7+Y.3*2+44X.Y.+1+Z.Z.Y.10*1+72!'!'!'!'!'!'!'!'!'!'!'!'!']$

您可以在此处获得用C编写的Mouse的解释器。

鼠标使用反向波兰语表示法,因此运算符遵循操作数。(向后思考Lisp。)使用进行变量分配,并通过<variable>:调用变量的值<variable>.。Mouse中的所有值都是整数。

!输出一个整数,并!'输出与该整数关联的ASCII字符。所有输出均进入STDOUT。

无论出于何种原因,所有有效程序都必须以结尾$

1 [ ~ If true, do

    ~ Variable assignments
    10 Y:
    Y. Y. * X:
    108 Z:

    ~ Push values onto the stack
    33               ~ 33  "!"
    X.               ~ 100 "d"
    X. 8 +           ~ 108 "l"
    X. Y. + 4 +      ~ 114 "r"
    X. Y. + 1 +      ~ 111 "o"
    X. Y. 2 * - 7 +  ~ 87  "W"
    Y. 3 * 2 +       ~ 32  " "
    44               ~ 44  ","
    X. Y. + 1 +      ~ 111 "o"
    Z.               ~ 108 "l"
    Z.               ~ 108 "l"
    Y. 10 * 1 +      ~ 101 "e"
    72               ~ 72  "H"

    ~ Pop values and output as characters
    !' !' !' !' !' !' !' !' !' !' !' !' !'

]   ~ End if
$   ~ End program

是头颈吗?
mbomb007

@ mbomb007不。
Alex A.

这是Nybbleist吗?
BrainSteel

@BrainSteel不。
Alex A.

只是个疯狂的猜测,朱莉娅?
Beta Decay 2015年

15

哈斯克尔,637字节

(program, main)= script $init

string= struct( \ 
  char(show)-> do show; putChar(char); while 1 ) (return 0)

script
  stack= auto $string("!dlroW ,olleH")

struct buffer (public) = share%: \ 
  align->flip
  (field public buffer) align

auto buffer= (init, buffer)

share from = select x where x = from x

while skip=return 1; skip= skip+1

select x | ~"World"<-
            "Hello"=x

loop k for[]
  buffer=(const ($k) ($skip) id)

loop while not(-- $x) {
  unsigned: i{-1}
  terminal.write(buffer{eval $i--})
  x= not (unsigned) $x
  $i `const `skip{-2}
}

memorize{+,-}

(goal, field)= auto loop

finish%:
  goal= finish $goal

去模糊视频

在此处输入图片说明


听起来像是体育游戏,哈哈。
mbomb007

出于某种原因,我觉得这是一种忽略字母字符的语言,所有世界都在那里使人们感到困惑。
kirbyfan64sos

@ kirbyfan64sos:不,只会忽略少数几个字符。您可以对该程序进行的大多数随机更改都会使它制动。
停止旋转逆时针

1
七天过去了。您可以透露语言并确保答案安全。(只要您不这样做,人们可能仍然会破解您的答案。)
Martin Ender

一个猜测:是zsh吗?
georgeunix

14

Wordfuck,1063个字节,通过破解马丁布特内尔

Thus men; die. Here meet prepar'd thrice be." Down his
 with lab'ring forg'd and And retir'd Now universal Phoebus at
 Hesperian living, off fields fierce cries, assail'd not for These
 foe. Spread, indulgent quarry headlong prince your bloody side crew.
 Elated call humble yield, his yield, boys camp men, cruel
 all the loudly trusty won, winter spouts they crown. Had
 what long long upon fram'd. Declare back throat, tossing his
 enters, the Nor Aeneas; said from flowing the enclose th'
 match'd Receive with neither threat. From seas painted His oppos'd,
 cried, Thus mortal the his and combine form and, wine.
 And but Let absent, sums to guest, you to spear
 to greedy of First, with love bear." path Whom heav'n
 That by Argive need they to blood, wert eyes the
 this To large, with Some Jove (The from hosts, the
 yoke with horses' when sail is purple at wintry his
 with more camp with have to Earth, to oppose of
 the troops with various but so, thirty well perform by
 the and waves- man! from fear victory too at fire,
 If recess banish'd transfer.

请注意,行尾必须为Unix样式。


3
Perl?(可能非常错误...)
kirbyfan64sos

40
@ kirbyfan64sos不,Perl太可读了。
jcai

2
起初我以为可能是??? 我非常兴奋,但是事实证明,它在???中不起作用。:/
Alex A.

1
@Caltor AlexA。刚刚在昨晚发布;)
ETHproductions'Aug

4
这就是Wordfuck
Martin Ender

13

Wordy,3279字节

#_>^ +7K1 }OU8 4>Fk ry\g 9Ff] A}kY ,6Fo IK`k C'td dbJ[ 0j]l MBp[ \">| R\JY %+T_
)*`7 @[{j ;x-+ _H\= ;D@& />p? h,mx 1m;7 p+yL -#&9 0(^! ,i9^ Q%_! +&$Q %#|e %:~A
%T</ }-(r ]_$p g&|" *w#= @++j \)U` <:W< _t{( c\#< :f@~ >[+6 ,B%? S6d} HSm" b=Yz
c[(; @n*# ;`,Z >~K) D"<% <}h" #>N. I0:o >c"+ '>S! pQX[ U#gu $Ei0 6`>~ -/4: ,3;%
\c(? h;TQ LN)o 5`#; }{V* '-E. 7:5u d]0y s|JJ u+>` `|8? y,<0 \(d! 1^*, &U`_ U/@"
*&7. M|f% |C#? \{4` ,k<+ %*'D h~=_ W_+{ [#_[ %"-r #~_F _:u. N|W6 awH' JMm, }%=R
a>*= *z+' {@"A ,'3\ m;}@ (I<. "044 '}A` =K'? puB[ R<ka nrR: S<>= ;`(e (\*p N$"?
u1c} eI%L O$*~ ]O+{ 7"@! vU%n 'MIs E`VV ,/~q p}\? ^DM, k:-! ,3:$ D*~< "}T^ /z}%
\|h< 'Y@? }M%0 {/c. |";P /I"` "[(v ~>l- #2]! j~af rZ(J 9zv` {`T, M`'& (H+: {G+>
A#~` /_%6 4"}! 9|rs [;$m ]J|? IZx; ^xaf WuB) =^+s |+%t [;^U ])A! H;Jb @STw x^`,
=9~< %Z). @v3o h;Tz M9~t {'|O {J`. u^t> 9<-? )/4- `/v| )>O] /(E' ,};X ;&0. 0`o:
(#o? ,D]< X%|* ;}*h [%C` &(A' ^@J^ {O[| &%&Q -;9` |j}) |z]+ :4:. 03(4 <Bhz N$mY
R$~< -M#' C)$$ /=[J 9@^" [*}a :%R. T1,W Y=}` O=&. D;ms Mi=c (Stg >|}1 __^B P};{
&{1. y(Wq T&Nq $^'D />@M @u^? $2Pd n4~d 19j/ X>#> #s[. 0-@P $B%? %w}% x=<[ =}r_
\#=8 ~~R> P']! }8a+ *;j! w<_` %;T: #0({ -_8< A(]^ @1`/ )@f` /=m\ e"~@ ~4$' (z]&
/C|? wtn; HFe^ Gzn* @K}/ >1+{ 7/-{ 2&{} }X-% T=:> O,;. qR8; ;*0: s|>. -bFs DK^y
jk}O =~g/ B%:{ 9;@` K%}? `Xvi "vI4 c+$) =<(b %g#. Tt'w P\ID M`fI %#^M E#=. B&)v
;9:? (+/7 <%q" =,U{ -`/G r[*^ Y;@! H&d> ))@% &S,! |B*[ ~^-p 6+,~ N#&\ ;]K* 6}=^
/|Q) *y:\ ,M*| %&'f =U>@ }~@Y >~3~ `P<: K\+? WUD= |4x5 sox} /6;> [&r{ p@", :'D}
g{^} -]$H _B-! fJ5< p;&@ {a~! Ra+M OKo+ ydJ+ *~-T :W=; @*#, ^_e- k=_. M@QY (fQn
X<,] >(C/ [A/. {nNT {tXg vy@e *1+} (G,. +2m[ X[=! s$,/ [@y! :l+9 -@2. :(P- +a~#
,p%) %*)0 }*=F +"T( Q&~@ <c*; }(\E 3@_* I):( \:2? ~CqL 5$TC ,ARH ;*p/ <~0` _B';
;=>A (%T, d&[; #`g. N*u1 @LEE zPP[ ;<)4 ,1%= [#1# =6^! IL\e 0t@f ~}h< j'{+ <_B!
wFE; lyr` Ja\V '[,J 2_^! Rb;% I>$? F#-{ %+j. fB>2 J7P# Kj~n }#C> T*%` Q=/@ T;%>
_c|{ :&$1 %Q}. rFl> #A,` `Z^! Ks"L hUI: 6_MV ^Q-- `M/> #3/= #'n. MID{ vdn, @_l{
v_@; `s@? H#eZ ]9my oP#e {|R# '(k! d#d; :s,? $+H@ :#=e }2-] 8,-< &1$! l(`7 e:-!
%\X$ k_>' <7], ~%N| r)]] -"$u &0\! SR:z ly]b K(wa q*@- ]{~c )}x% &@&Y >~;j #R)=
%V*. %L1F j'~; +_0. Yz-x @kVV 0G:a `,p] (>n< >{{z /#m! S~CS #Foq %$h( +*{B G#@?
fwr< %OQt K"Cx @0}+ b${. F]R* k=/! C$=, @#/b 4[$* y`,^ $|*R 6,%! Z*c@ ;0\. [&f-
$"/k -L{, \@7{ ^]k\ v$>% v#-; +G># -F@} :=R@ Z<|^ )H-~ o#~^ E#$) :a{. i52: :svA
q&NY #g"< )r]{ "p%& %P}@ 'k|, #m)' ]6$. :@{& |Rcr \]|T ;^8! b2{F rv<i N>VP D>~_
)'A_ G(}- Y&^? 64-A %klM %Q=@ }J:; _b<? ^jjo v[5V {gyQ y)`[ }|l. '0B` A`{. >]@M
#},y C"_} s]@' \9|- _#$o _w"? %&43 k}". >}u- ^]b? z%Cg f+aT vr$A /:\z #);I $*F,
+7^# \%T( ,*a{ &>n? t8J( >*|F @{4? >X4T o7r+ bQ:L *^C_ ;#8& `w(( >,v. a<dY D52+
1_+: "-i) }&f? *LNO %d5F yu{O $}&x 'v]? *b{m &*i! W\#( <%i+ }=o" 9=#& \@1{ @4-?
O])U :`Z? T{`> &>}0 <[T+ `w|{ *"k* >@b^ ~,8+ "{;n &-X* "l{+ [V_" ^8$. $Ppv MY7%
1e;R ={g# |N}_ )`[d *U\~ "@L# &o{, ^Y[! m13= z@\$ /\o. VdO" %EBr h,cD &^(6 )t(`
'S%, @L(? zd{g 0YR" n;}_ 9$~^ N`$! hz>G iM_A JT8+ K)-] g[`? 1J@~ -l*? {<n& w{+:
;r`& ,9-> (}r| M$<? I"0* H|=. =[:T (^#y V~-/ 6(:? K{GF RzF^ V^4d ;#>d ~C}@ b(^\
(_B- /)_K >;^i V#%! c5H^ 'R@> <M:. ee\0 jPH( JV=4 >{&k "T#\ y';) {^e? :gq7 2B(3
+P-| s\%( 'e~? TE8^ V6U> mB<q 'K&( {u|! y@<A ]f&. "K~+ =o(? 5+u^ u>(? a_%. *</>

正如我在评论中所暗示的那样,这个大海捞针几乎是针刺。

我们可以通过执行以下指示来向世界致意:

ASSIGN NOP LITERAL 16
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 4 LITERAL 8
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 6 LITERAL 5
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 6 LITERAL 12
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 6 LITERAL 12
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 6 LITERAL 15
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 2 LITERAL 12
OUTCHAR MULTIPLY VALUE NOP LITERAL 2
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 5 LITERAL 7
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 6 LITERAL 15
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 7 LITERAL 2
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 6 LITERAL 12
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 6 LITERAL 4
OUTCHAR ADD MULTIPLY VALUE NOP LITERAL 2 LITERAL 1

Wordy将所有指令编码为句子,其中比四舍五入的平均值长和短的单词部分选择命令。

对于所使用的说明,我能找到的最短的句子是:

ASSIGN xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx x x x x x x x.
VALUE xxx xxx x x x.
ADD xxx x x.
MULTIPLY xxx xxx xxx x x x x.
OUTCHAR xxx xxx xxx x x x x x x x.
NOP xxx xxx xxx x x.
LITERAL xx x.

但是,如何掩盖单词长度是源代码中唯一重要的事实呢?

只要它们是字母数字,单词顺序和所选择的单词字符都无关紧要,因此我决定向每个单词添加随机的非字母数字字符,以将所有字符填充为相同的长度。我还添加了一些非单词(根本没有字母数字字符)以使源代码具有令人愉快的矩形形状。

我已经使用此CJam程序生成了最终的源代码。


3
那是一大堆干草堆。
Sp3000

4
我想这取决于针的大小。
丹尼斯

6
说到干草堆。如果当前没有一种叫做“干草堆”的语言,那将是一个很好的名字……
mbomb007

@ mbomb007正在研究中;)
Kade

我很确定不是,但是l33t吗?
MickyT
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.