博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
世界上最好玩的6种表情符号编程语言
阅读量:4103 次
发布时间:2019-05-25

本文共 5574 字,大约阅读时间需要 18 分钟。

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

这些基于表情符号的语言大多是深奥的编程语言( esoteric programming language),称为esolang。然而,这些语言相对来说比其他语言更容易理解。

esolang的定义是:

Esolang 不是为普通的软件开发目的而设计的。他们只是是作为一个概念的证明或者就是一个笑话。

如果你想了解世界上最难的语言,你可以看看我的。让我们看看这五种可以使用表情符号和表情符号来编程的语言。

Emoji

Emoji使用一个预定义的表情符号列表来生成语言命令,这些表情符号可以作为标志,Emoji是一个基于栈的语言。除了表情符号之外,其他所有字符都被视为字符。下面是在 Emoji 打印Hello World! 的代码片段。

????Hello, World!????➡

输出结果如下:

这是这个语言的文档:

????: Read until the next ???? and puts that string onto the stack⛽: Reads until the next ???? and puts that string onto the stack (can be nested, meant for storing functions)➡: Prints a value from the stack????: Puts True onto the stack????: Puts False onto the stack????: Inverts a boolean value from the stack????: Adds two numbers from the stack????: Multiplies two numbers from the stack????: Subtracts two numbers from the stack????: Divides two numbers from the stack????: Divides two numbers from the stack, returns the remainder????: Rounds a number to the nearest integer????: Rounds down a number from the stack????: Rounds up a number from the stack????: Converts a number to a hex string????: Converts a string to a number????: Checks if two numbers are equal????: Checks if a number is less than another????: Checks if a number is greater than another????: Takes a boolean from the stack.  If false, skips to the next ????.????: If the last ???? did not skip past stuff, skip to the next ????.????: Takes two strings from the stack.  Runs the first, takes a boolean.  If true, runs the second and repeats.????: Duplicates a stack entry????: Converts a character to its character code????: Converts a character code to its character????: Takes two objects, saves the first to a variable identified by the second????: Takes an object, returns the value from the variable by that name????: Returns the length of a string or array from the stack✂: Takes a string and two numbers.  Returns the substring from the string from the first number (inclusive) to the second number (exclusive).????: Evaluates a string????: Creates an empty array.????: Takes an array and an object.  Adds the object to the end of the array.  Does not return anything, you'll want to use variables with this.????: Takes an array or string and an index.  Returns the value at that index.????: Swaps two elements on the stack.????: Capitalize a string.????: Change a string to lowercase.

Emojicode

Emojicode是一种面向对象程序设计语言,我们可以用表情符号来编码,在 Emojicode,使用表情符号让编程变得有趣。它是一种强类型编程语言。该语言的作者讨厌随机空指针异常,因此,在 Emojicode,所有的实例变量都需要初始化,否则就会抛出编译错误。

下面是在 Emojicode 打印Hello World! 的代码片段。

???? ????  ???? ????Hello, World!????❗️???? 

输出结果如下:

Emoji-gramming

Emoji-gramming是一个基于表情符号的深奥的编程语言,这种语言总共有25个变量和4个命令,它们都由特定的表情符号表示。表情符号使用心型符号作为常量,例如:

???? = 0???? = 1???? = 2???? = 4???? = 8

麦克风(????)符号表示输入,扬声器(????)符号表示打印输出,好像很有道理的样子?下面是打印“ Hello,World! ”的代码片段表情符号:

????????????????????????????????????????????????????????????????????????????♈????????♈????????????♈????♈????????♈????????♈????????♈????????????♈????♉????????♉????????♉????????♉????????????♉????????♉????♊????????♊????????♊????????♊????????♊????????♊????????????♊????♈????????♈????????♈????????????♈????????????????♈????????♈????????♈????????♈????????♈????????????♈????????♊????♈????????♈????????♈????????♈????????????♈????????♉????♈????????♈????????♈????????????♈????♈????????♈????????????♈????♈????????♈????????????♈

输出结果如下:

Emojicoder

这是一个用特定的表情符号表示命令和参数的符号系统,二进制值0和1在 Emojicoder 定义了各自的表情符号。

????=0????=1???????????????????????????????? = 01001000 = H

在 Emojicoders 中有两个修饰符如下:

????: Ascii Character 0-255????: Integer Number 0-255

要打印参数,该语言使用手表情符号(????)作为输出命令。每个命令都需要是新的一行。现在,让我们利用上述知识,在 Emojicoder 打印出Hello,World! 。

???????????????????????????????????????? //Output H???????????????????????????????????????? //Output e???????????????????????????????????????? //Output l???????????????????????????????????????? //Output l???????????????????????????????????????? //Output o???????????????????????????????????????? //Output ,???????????????????????????????????????? //Output space???????????????????????????????????????? //Output w???????????????????????????????????????? //Output o???????????????????????????????????????? //Output r???????????????????????????????????????? //Output l???????????????????????????????????????? //Output d???????????????????????????????????????? //Output !

输出结果如下:

Emotinomicon

Emotinomicon 是由康纳 · 奥布莱恩设计和创造的,不再使用表情符号,而是使用表情字符来进行编码。下面是在 Emotinomicon 打印Hello,World! 的代码片段。

????!dlroW ,olleH????⏪⏬⏩

下面是上面代码片段的解释,它可以帮助你尝试执行任何其他字符串,并获得一些乐趣。

????begin quote string!dlroW ,olleH????end quote string⏪open loop⏬pops and outputs top of stack as character⏩close loop

输出结果如下:

Emotifuck

Emotifuck使用Rust编写,它使用八个表情符号作为命令,根据语言设计者的说法,它完全是内存安全的。

下面是命令列表和它们的等价符号。

???? - Move Right (>)???? - Move Left (<)???? - Decrement (-)[might have been better as output command ;)]???? - Increment (+)???? - Output (.)???? - Input (,)???? - Jump Forward ([)???? - Jump Backward (])

Hello World!  的代码如下。

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

最后,祝你编程愉快,周末快乐!

本文内容90%翻译自这里:https://levelup.gitconnected.com/5-most-amusing-programming-languages-you-can-code-using-emojis-4bfd43bc7614

推荐阅读最近聊了一些高P,我慌了十年老码农,现场教你写简历为了让你看技术文章,我们操碎了心。。。编程·思维·职场欢迎扫码关注

转载地址:http://vhysi.baihongyu.com/

你可能感兴趣的文章
阿里面试总结--JAVA
查看>>
Servlet的生命周期
查看>>
JAVA八大经典书籍,你看过几本?
查看>>
《读书笔记》—–书单推荐
查看>>
【设计模式】—-(2)工厂方法模式(创建型)
查看>>
有return的情况下try catch finally的执行顺序(最有说服力的总结)
查看>>
String s1 = new String("abc"); String s2 = ("abc");
查看>>
JAVA数据类型
查看>>
Xshell 4 入门
查看>>
SoapUI-入门
查看>>
Oracle -常用命令
查看>>
JAVA技术简称
查看>>
ORACLE模糊查询优化浅谈
查看>>
2016——个人年度总结
查看>>
2017——新的开始,加油!
查看>>
【Python】学习笔记——-6.2、使用第三方模块
查看>>
【Python】学习笔记——-7.0、面向对象编程
查看>>
【Python】学习笔记——-7.1、类和实例
查看>>
【Python】学习笔记——-7.2、访问限制
查看>>
【Python】学习笔记——-7.3、继承和多态
查看>>