【编者按】本文作者为 Deepak Karanth,主要介绍世上最怪异、最难用的5种编程语言。文章系国内 ITOM 管理平台 OneAPM 编译呈现。
最难学编程语言有哪些?很多人都用过Java,C,C++之类的编程语言编写代码。再早几年,很多人会使用Pascal,Fortran,COBOL等编程。在学习这些语言的过程中,会遇到足够的挑战,让你抓狂。但是最终,当你投入足够的时间和精力之后,一切也变得顺利起来。
但是,也的确有些难到极致的编程语言。这些语言被称为极品编程语言。创造它们的原因通常是为了测试编程语言设计的临界,或者只是一个玩笑。好消息是,它们永远不会成为主流,所以你不需要学习它们!
闲话少说,最难的(或最怪异的?)编程语言是……
Brainf*ck
Brainf*ck由Urban Müller在1993年创建的, 目的是为Amiga OS 2.0版本打造使用最小的编译器的语言。
Brainf * ck主要操纵内存单元数组,此数组也被称为纸带(the tape),被初始化为0。Brainf * ck只提供了8个指令。
8个指令为 ><+-.,[]
“Hello world” code looks like this:
其“Hello world”代码是这样的:
++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++ ..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.
COW
对。就是母牛的Cow.
COW编程语言设计时充分考虑了母牛的想法。鉴于母牛的词汇有限,因此只包含了它们仅有的词汇。因此,所有指令都是“moo”的变体,恰好是母牛能理解的唯一词汇。
其他非指令的词汇或符号则被完全忽略。因此,空格可有可无,换行符也可有可无。因此,注释COW程序非常简单,只要不使用任何嵌入指令的词汇就行了。
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 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 OOO 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 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 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 MOo Moo OOO 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
INTERCAL
全称为The Compiler Language With No Pronounceable Acronym,缩写为INTERCAL。表达式看起来类似线路噪音。而指令构造会让你抓狂,大笑,甚至大骂。
INTERCAL还有许多其他特性,让程序员很难接受:它使用“READ OUT”,“IGNORE”,“FORGET” 之类的声明,“PLEASE”之类的修饰符。使用“PLEASE”时,若遭到编译器的拒绝,原因一般有二:如果没有经常使用“PLEASE”,该程序会被认为不够礼貌,且会有提示信息;如果使用得过于频繁,则会被认为过分礼貌。
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
Whitespace
发布于2003年4月1日,大多数人认为这是一个愚人节玩笑;但它不是。在Whitespace语言中,只可使用空格,制表符和换行符。Whitespace解释器忽略任何其他非空白字符。不过,有趣之处在于,Whitespace程序可以轻易隐藏在其他语言的空白符中。
Chef
Chef是一个基于栈的语言,程序看起来就像菜谱。
根据Chef的主页,Chef的设计原则是:
- 程序食谱不仅要生成有效的输出,也要容易准备,并且美味。
- 食谱可以根据不同的预算调节。
- 食谱是公制的,但也可以使用传统烹饪度量工具,比如杯子和汤匙。
其“Hello world”是这样的!
Ingredients. 72 g haricot beans 101 eggs 108 g lard 111 cups oil 32 zucchinis 119 ml water 114 g red salmon 100 g dijon mustard 33 potatoes Method. Put potatoes into the mixing bowl. Put dijon mustard into the mixing bowl. Put lard into the mixing bowl. Put red salmon into the mixing bowl. Put oil into the mixing bowl. Put water into the mixing bowl. Put zucchinis into the mixing bowl. Put oil into the mixing bowl. Put lard into the mixing bowl. Put lard into the mixing bowl. Put eggs into the mixing bowl. Put haricot beans into the mixing bowl. Liquefy contents of the mixing bowl. Pour contents of the mixing bowl into the baking dish. Serves 1.
其他语言……
其实,还有更多难到极致的奇怪语言。请访问此处,获得更多信息!
本文系 OneAPM 工程师整理呈现。OneAPM 能为您提供端到端的应用性能解决方案,我们支持所有常见的框架及应用服务器,助您快速发现系统瓶颈,定位异常根本原因。分钟级部署,即刻体验,性能监控从来没有如此简单。想阅读更多技术文章,请访问 OneAPM 官方技术博客。
本文转自 OneAPM 官方博客
原文地址:https://dzone.com/articles/most-difficult-and-strangest-programming-languages
相关推荐
所见过的13种最为奇葩的编程语言,无聊之余的谈资. 不喜勿喷
Piet一种奇葩编程语言Piet一种奇葩编程语言Piet一种奇葩编程语言Piet一种奇葩编程语言Piet一种奇葩编程语言Piet一种奇葩编程语言Piet一种奇葩编程语言Piet一种奇葩编程语言Piet一种奇葩编程语言Piet一种奇葩编程语言...
html5微信小游戏源码 奇葩连连看游戏源码(仅用于参考)html5微信小游戏源码 奇葩连连看游戏源码(仅用于参考)html5微信小游戏源码 奇葩连连看游戏源码(仅用于参考)html5微信小游戏源码 奇葩连连看游戏源码(仅...
奇葩连连看HTML5游戏源码,运行需要服务器环境,已经反复测试,放心使用。
浅析网络节目奇葩说主持人语言风格.doc
个最奇葩国家的国旗.ppt
奇葩工具箱2014.10.19最新版本 奇葩工具箱Beta5.0.8更新内容: 1.修复*启动程序后右上角显示不明标签问题; 2.调整*对奇葩闹钟功能做了一点调整; 3.取消*QQ个性网名,签名,头像,分组大全等QQ相册封面拼图; 4....
奇葩过最新安全狗拿SHELL奇葩过最新安全狗拿SHELL奇葩过最新安全狗拿SHELL奇葩过最新安全狗拿SHELL奇葩过最新安全狗拿SHELL奇葩过最新安全狗拿SHELL奇葩过最新安全狗拿SHELL奇葩过最新安全狗拿SHELL奇葩过最新安全狗...
全球最奇葩的小偷_人生故事.pdf
奇葩版Flappy Bird游戏源代码,
编程狂人是推酷网旗下的周刊,每周一发布,并且同步发布pdf离线版本,内容以开发技术,编程语言,框架等为主,并且配有一周IT业界新闻! 目录 业界新闻 斯坦福大学发布免费在线文本分析工具 Parse发布Bolts,一个...
使用afnPOST请求不正规json数据,不能解析,最终通过简单思路实现了,其中涉及到非json字符窜,转json字符窜再解析json字符窜
H5微信小游戏源码-奇葩连连看游戏源码.zip
html5微信小游戏-奇葩连连看游戏源码.zip
微信小游戏源码 奇葩连连看游戏源码(仅用于学习参考)微信小游戏源码 奇葩连连看游戏源码(仅用于学习参考)微信小游戏源码 奇葩连连看游戏源码(仅用于学习参考)微信小游戏源码 奇葩连连看游戏源码(仅用于学习...
辩论赛节目:观《奇葩说》之朋友圈该不该屏蔽父母语言记录.docx
奇葩115.docx
初中语文文摘人生伤口上开出的奇葩
考研复试,导师最喜欢有这6个特质的学生,有些答案还挺“奇葩” 研究生复试,说白了就是面试导师对考生综合素质进行的一次打分。 分数高者被录取,分数低者被淘汰。 那么,我们不禁要问,面试导师判断优秀学生的...
《江南戏曲奇葩——越剧》教学设计2.pdf