专栏首页灵魂画师牧码世界上最难的5种编程语言

世界上最难的5种编程语言

当我们谈论 c,c++ ,Java,Python的时候,有些语言不仅很难,而且对于大多数软件开发者来说几乎是无法理解的。

这些语言被称为深奥的编程语言,英文称为esoteric programming language,简称esolang

下面是五种最难理解的语言,我试着用这些语言编写程序Hello World,貌似非常有趣的样子。

Malbolge

Malbolge 是 Ben Olmstead 在1998年发明的,这种 esolang 被认为是最复杂的编程语言。

据说,Malbolge 编程语言的作者从来没有用这种语言编写过任何代码,而且Malbolge的 hello world 代码出现在 Olmstead 发明这门语言两年之后。

这是Malbolge 打印“ Hello World! ”的代码片段。

(=<`#9]~6ZY32Vx/4Rs+0No-&Jk)"Fh}|Bcy?`=*z]Kw%oG4UUS0/@-ejc(:'8dc

输出结果如下:

INTERCAL

INTERCAL是“Compiler Language With No Pronounceable Acronym”的缩写,Jim Lyon和Don Woods在1972年发明了INTERCAL,讽刺了当时各种编程语言的很多方面,以及在20世纪60年代拟定的语言结构和注译。

INTERCAL有很多看起来令人无语的设计。

例如: 它使用诸如“ PLEASE”之类的修饰语,如果代码中不经常使用“ PLEASE” ,编译代码就会报错。它认为这个项目不够礼貌,如果修饰语“ PLEASE”过多,编译器也会报错,他认为你“过分礼貌”... ...

下面是 INTERCAL 中打印“ Hello,World! ”的代码片段。

DO ,1 <- #13
PLEASE DO ,1 SUB #1 <- #238
DO ,1 SUB #2 <- #108
DO ,1 SUB #3 <- #112
DO ,1 SUB #4 <- #0
DO ,1 SUB #5 <- #64
DO ,1 SUB #6 <- #194
DO ,1 SUB #7 <- #48
PLEASE DO ,1 SUB #8 <- #22
DO ,1 SUB #9 <- #248
DO ,1 SUB #10 <- #168
DO ,1 SUB #11 <- #24
DO ,1 SUB #12 <- #16
DO ,1 SUB #13 <- #162
PLEASE READ OUT ,1
PLEASE GIVE UP

输出结果如下:

Brainfuck

Brainfuck是由 Urban Muller 于1993年开发的,这种语言就是程序员无聊发明的。中文翻译:真他妈的... ...,谷歌给我提供了一个新思路,叫做脑干... ...

整个语言只包含8个不同的字符,用于实现任何代码,由 Muller 开发的原始编译器只使用了296个字节。

这种语言,是一种按照“Turing complete(图灵完备)”思想设计的语言,它的主要设计思路是:用最小的概念实现一种“简单”的语言。

这是Brainfuck 打印“ Hello World! ”的代码片段。

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

输出结果如下:

另外对于这个语言,知乎上还有一个很有意思的视频,可以搜索看看。

COW

Cow是由 Sean Heber在2003年发明的,一旦你看到 hello world 代码,你就会明白为什么这种语言被命名为COW。

Cow在难度水平上与 Brainfuck 相似,与 Brainfuck 相比,它又多了4条命令,也就是说,整个语言中有12条命令。

下面是用 COW 打印“ Hello,World! ”的代码片段。

MoO MoO MoO MoO MoO MoO MoO MoO MOO moO MoO MoO MoO MoO MoO moO MoO MoO MoO MoO moO MoO MoO MoO MoO moO MoO MoO MoO MoO MoO MoO MoO
 MoO MoO moO MoO MoO MoO MoO mOo mOo mOo mOo mOo MOo moo moO moO moO moO Moo moO MOO mOo MoO moO MOo moo mOo MOo MOo MOo Moo MoO MoO 
 MoO MoO MoO MoO MoO Moo Moo MoO MoO MoO Moo MMM mOo mOo mOo MoO MoO MoO MoO Moo moO Moo MOO moO moO MOo mOo mOo MOo moo moO moO MoO 
 MoO MoO MoO MoO MoO MoO MoO Moo MMM MMM Moo MoO MoO MoO Moo MMM MOo MOo MOo Moo MOo MOo MOo MOo MOo MOo MOo MOo Moo mOo MoO Moo

输出结果如下:

Whitespace

Whitespace是由Chris Morris 和 Edwin Brady 在杜伦大学开发的,而且是在2003年的愚人节发布的。

大部分的现代程式设计语言都不将空白字符视为语法的一部分,但Whitespace却只把空白格、制表符和换行符作为语法的一部分,Whitespace的解释器忽略所有非空白字符,并将其视为代码注释。

下面是用空格打印“ Hello World! ”的代码片段。在下面的代码中,每个空格、制表符或换行符前面分别加上注释“ s”、“ t”或“ l”。

S S S T S S T S S S L
T L
S S S S S T T S S T S T L
T L
S S S S S T T S T T S S L
T L
S S S S S T T S T T S S L
T L
S S S S S T T S T T T T L
T L
S S S S S T S T T S S L
T L
S S S S S T S S S S S L
T L
S S S S S T T T S T T T L
T L
S S S S S T T S T T T T L
T L
S S S S S T T T S S T S L
T L
S S S S S T T S T T S S L
T L
S S S S S T T S S T S S L
T L
S S S S S T S S S S T L
T L
S S L
L
L

输出结果如下:

Image for post

最后,这个网站还有更多的esolang,可以自己去尝试玩玩,都挺有意思的,另外知乎有个话题也叫做esolang,里面的帖子也不少,感兴趣的也可以去看看。

本文内容来自https://levelup.gitconnected.com/5-most-difficult-programming-languages-in-the-world-549c3cf91b23 翻译。

文章分享自微信公众号:
编程如画

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!

原始发表时间:2020-10-22
如有侵权,请联系 cloudcommunity@tencent.com 删除。
登录 后参与评论
0 条评论

相关文章

  • 世界上最难的5种编程语言

    我们平时都在谈论 C、C ++、Java、Python 等编程语言,其实还有些语言不仅对于大多数软件开发人员来说都很难,而且几乎是不可理解的。

    深度学习与Python
  • 世界上最难的5种编程语言

    当我们谈论 c,c++ ,Java,Python的时候,有些语言不仅很难,而且对于大多数软件开发者来说几乎是无法理解的。

    艾小仙
  • 世界上最难的5种编程语言

    当我们谈论 c,c++ ,Java,Python的时候,有些语言不仅很难,而且对于大多数软件开发者来说几乎是无法理解的。

    小灰
  • 程序员的噩梦:世界上最难的5种编程语言

    导读:每个程序员都熟悉许多编程语言。许多编程语言都是高级的,它们的语法是人类可读的。然而,也有一些低级语言,对于一个人来说,读起来很困难,但是可以理解。您是否遇...

    华章科技
  • 世界上最难学的编程语言,C语言只排第三,第一你绝对想不到!

    本次参与最难学编程语言排名的选手我从以上榜单中筛选了10位大家比较熟知的,他们分别是:Java、C、Python、C++、.NET、JavaScript、PHP...

    小林C语言
  • 你见过的最难的编程语言是什么?

    每个程序员都熟悉许多编程语言。许多编程语言都是高级的,它们的语法是人类可读的。然而,也有一些低级语言,对于一个人来说,读起来很困难,但是可以理解。然而,您是否遇...

    用户6543014
  • 你见过的最难的编程语言是什么?

    每个程序员都熟悉许多编程语言。许多编程语言都是高级的,它们的语法是人类可读的。然而,也有一些低级语言,对于一个人来说,读起来很困难,但是可以理解。然而,您是否遇...

    巴法
  • 谁才是世界上最好的编程语言?

    其实大雄觉得没有哪个编程语言是最好的,每个编程语言都有自己的优势,每个经典的编程语言都有各自适用的地方。自己用的语言就是世界上最好的编程语言!

    老九君
  • 为什么C++是最难学的编程语言?

    很多已经做了几年的C++程序员已经很自信觉得这门编程语言算是熟悉阶段了,但是当重新对这门语言来个彻底大扫除的时候发现,又有新的语法出现,最糟糕的是之前掌握的很多...

    程序员互动联盟
  • 最易学和最难学的编程语言Top 5

    点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 |...

    芋道源码
  • 来看漫画:我才是世界上最好的编程语言

    CCCruch
  • 世界上最奇葩的编程语言,认真的吗?

    有些编程语言,格外地不一样!下班路上,来认识认识这几个“特别”的语言吧,不知道你有没有用过呢~

    养码场
  • 编程语言2月最新排行榜出来了:最难的语言竟是它!

    经过 2 周投票,InfoQ 编程语言 2 月排行榜活动正式结束。基于用户的投票数据,我们不仅对程序员与编程语言的关系有了新的认识,而且还有一些有趣的发现。

    Java程序猿
  • 【干货】这5种最难编程语言,是程序员的噩梦

    每个程序员都熟悉许多编程语言。许多编程语言都是高级的,它们的语法是人类可读的。然而,也有一些低级语言,对于一个人来说,读起来很困难,但是可以理解。您是否遇到过一...

    钱塘数据
  • 世界上最好玩的6种表情符号编程语言

    谁能想到我们最喜欢的表情符号可以用来设计新的编程语言?聪明有才华的人已经想象并开发出了成熟的编程语言,我们可以用它来编写表情符号和表情符号。

    艾小仙
  • 微软:Excel 公式是世界上使用最广泛的编程语言

    微软近日推出了一项 Excel 公式构建的新功能 LAMBDA,正则测试阶段。LAMBDA 允许使用 Excel 自身的公式语言自定义功能,而过去,Excel ...

    GitHubDaily
  • 世界上最好的语言——Go

    方式导入包,其中alias参数是包的别名,不指定别名时,可以省略括号,使用'.'代表以当前路径作为别名,所以使用包中成员时不需要加包前缀。当导入包的源文件包含i...

    歪歪梯
  • Java是世界上最好的语言!

    Java是迄今为止最好的编程语言。几乎所有的《财富》500强公司都对这个事实表示赞同,无可反驳。

    程序员小跃
  • “Python才是世界上最好的语言”

    最近,电气和电子工程师协会( IEEE)发布了顶级编程语言交互排行榜:Python高居首位。

    计算机视觉研究院

扫码关注腾讯云开发者

领取腾讯云代金券