天天看点

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

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

这些语言被称为深奥难懂的编程语言(或晦涩语言)。

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

晦涩语言并不是为普通的软件开发而设计的。它们的设计目的是作为概念证明,或只是开个玩笑。

这里列出五种最难懂的晦涩语言的清单。我尝试用每种语言执行了“ Hello World! ”程序,非常有趣。

Malbolge

Malbolge 由 Ben Olmstead 于 1998 年发明。这种晦涩语言被认为是最复杂的编程语言。

据说 Malbolge 编程语言的作者从未使用该语言编写任何程序。Olmstead 发明该语言近两年后,Malbolge 中的 hello world 代码才出现。

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

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

这是输出:

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

由作者提供—代码在 tio.run 执行

INTERCAL

Jim Lyon 和 Don Woods 于 1972 年开发了 INTERCAL,它是一种诙谐有趣的编程语言。

它刚开始的名称是“ 没有可发音首字母缩略词的编程语言 ”。

INTERCAL 设计了许多让程序员感到沮丧的特性。

例如:它使用修饰符“PLEASE”。如果代码中不经常使用“PLEASE”,则编译器可以拒绝该代码。它将程序视为“不够礼貌”。如果修饰符“PLEASE”被使用了太多次,则编译器也将拒绝该代码,认为其“过于礼貌”。

这是在 INTERCAL 中打印“ Hello,World! ”的代码段。

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

这是输出:

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

由作者提供—代码在 tio.run 执行

Brainfuck

Brainfuck 由 Urban Muller 于 1993 年开发。该语言是为了让程序员消遣娱乐而发明的。

该名称本身暗示着该编程语言对于任何程序员而言都非常难以理解。

整个编程语言仅有 八个不同的字符 ,该语言用这八个字符编写所有代码。Muller 开发的原始编译器仅使用 296 个字节。

这是在 brainfuck 中打印“ Hello,World! ”的代码段。

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

这是输出:

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

由作者提供—代码在 tio.run 执行

COW

COW 由 Sean Heber 于 2003 年开发。看到其 hello world 代码后,您将了解为什么这种语言叫做“ COW”。

在难度级别上,COW 与 Brainfuck 相当。与 Brainfuck 相比,它还多了四个命令,即整个语言中有 12 个命令。

这是在 COW 中打印“ Hello,World! ”的代码段。

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

这是输出:

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

由作者提供—代码在 tio.run 执行

Whitespace

Whitespace 由 Chris Morris 和 Edwin Brady 在杜伦大学开发。该语言发布于 2003 年愚人节。

使用该语言编写任何程序都依赖于 空格、制表符 和 换行符 。Whitespace 的解释器将忽略非空格字符,并将其视为代码注释。

这是在 Whitespace 中打印“ Hello,World! ”的代码段。

在下面的代码中,每个 空格、制表符 或 换行符 前面都带有注释“S”、“T”或“L”。

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

这是输出:

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

由作者提供—代码在 tio.run 执行

还有很多类似的 晦涩语言 ,你可以自己去探索一番。

其实我们在选择编程语言的时候,一定要慎重选择,最开始笔者并不建议选择当前的热门语言,而是应该从长远来看,既然选择了编程,那么如何才能将自己的根基打造的更加的稳固,以后更能够长远的发展,而不是成为了当前热门语言的码农!

如果你依然在编程的世界里迷茫,不知道自己的未来规划,亦或你想更好的提升你的编程能力,好好学习C/C++编程知识的话!那么你很幸运~

C语言C++编程学习交流圈子,Q群1030652847【点击进入】微信公众号:C语言编程学习基地

分享(源码、项目实战视频、项目笔记,基础入门教程)

欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!

编程学习书籍:

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace

编程学习视频:

世界上最难的 5 种编程语言!C/C++竟不在其列,它们到底是谁?MalbolgeINTERCALBrainfuckCOWWhitespace