用 Emojicode 编写一个可爱的程序

这种有趣的开源语言非常适合学习编码。
2 位读者喜欢这篇文章。

在本文中,我将介绍最适合学习如何制作任何东西的编程语言!它叫做 Emojicode。Emojicode 由 Theo Belaire 于 2014 年创建,是一种开源编程语言,它使用表情符号来表示其语法。在使用 Emojicode 时,表情符号用于创建变量、函数和控制结构。由于它是一种静态类型语言,因此变量类型必须在使用前声明,但它也支持面向对象的概念,如类和继承。这种语言可以在每个操作系统上运行,而且它是一种超级有趣的编码方式,特别是如果您是非英语母语人士。这很有帮助,因为象形文字表示可以将我们聚集在一起,并允许我们以类似于数学的方式说同一种语言。

先决条件

在本教程中,我使用的是基于 Debian 的操作系统。我的工具可能与您的操作系统要求的工具不同。以下是我正在使用的工具:

  • Geany,一个适用于 Linux 的开源 IDE。
  • IBus,它允许您选择表情符号并将它们放置在您的编辑器中。我正在使用的界面叫做 emoji picker(表情符号选择器)。
  • 基于 Debian 的 Linux。
  • C++ 编译器。我正在使用 g++ 编译器。
  • Emojicode

我正在使用 Linux 操作系统,但您可以阅读文档以了解您可能需要在其他操作系统上使用它的任何特殊步骤。

在 Linux 上安装 Emojicode

在您的计算机上安装 Emojicode 有几种方法,但它们有一个很酷的魔法安装页面,可以告诉您具体该怎么做。以下是我所做的:

$ wget https://github.com/emojicode/emojicode/releases/download/v1.0-beta.2/Emojicode-1.0-beta.2-Linux-x86_64.tar.gz -O emojicode.tar.gz \
&& tar -xzf emojicode.tar.gz && rm emojicode.tar.gz \
&& cd Emojicode-1.0-beta.2-Linux-x86_64 && ./install.sh \
&& cd .. && rm -r Emojicode-1.0-beta.2-Linux-x86_64

这是该命令的输出。

The emojicode installation procedure provides useful feedback along the way.

(Jess Cherry,CC BY-SA 4.0)

现在您已经安装好了一切,是时候开始编写一些代码了!

这一切是如何运作的?

首先,所有 Emojicode 文件扩展名都以 filename.🍇 结尾,但因为您不能在普通文件名中这样做,它会转换为 filename.emojic。以下是最重要的语法元素:

  • 在行的开头放置 🏁 以指示哪些代码块是要执行的
  • 用 🍇 开始一个代码块
  • 使用 🍉 结束一个代码块
  • 想要打印一些东西?只需使用 😀 🔤 <string> 🔤 ❗

还有更多内容,所以这里有一些实际示例。

打印一首俳句

首先,尝试打印一首优美的俳句来获得乐趣!我将在本示例中添加一个注释。看看您是否可以识别它。

🏁🍇
💭 This is a single line comment for fun
😀 🔤Emojicode is great,🔤 ❗
😀 🔤Fun and expressive code,🔤 ❗
😀 🔤no sadness, just joy.🔤 ❗
🍉

现在我们需要保存我们的代码并通过我们的编译器运行它来生成一个不错的可执行文件

$ emojicodec haiku.emojic 
$ ls
haiku  haiku.emojic  haiku.o

正如您所看到的,代码已经被编译并生成了两个文件,其中一个是可执行文件。运行 haiku 文件

$ ./haiku 
Emojicode is great,
Fun and expressive code,
no sadness, just joy.

数学和变量操作

接下来,您将一次做几件事:一点数学运算和变量的更改。首先将一个变量赋值为 0

0 ➡️ 🖍🆕x

您刚刚通过使用蜡笔表情符号创建了一个新变量,以及变量名旁边的新表情符号,同时还将该变量赋值为 0。

接下来,打印一行包含变量的行,使用磁铁表情符号

😀 🔤The value is 🧲x🧲 🔤 ❗

接下来,使用加号和箭头表情符号更改变量

x ⬅️➕ 1

然后打印另一行,其中包含该值。我继续这样做了一段时间,并打印了最终值。以下是我所做的:

🏁 🍇

💭Updating a variable using math 
0 ➡️ 🖍🆕x
😀 🔤The value is 🧲x🧲 🔤 ❗

x ⬅️➕ 1
😀 🔤The value is 🧲x🧲 🔤 ❗

x ⬅️➕ 15
😀 🔤The value is 🧲x🧲 🔤 ❗

x ⬅️➖ 9
😀 🔤The value is 🧲x🧲 🔤 ❗

x ⬅️➗ 2
😀 🔤The final value is 🧲x🧲 🔤 ❗
🍉

接下来,使用 emojicodec 编译代码,然后使用您的可执行代码查看结果

$ emojicodec math.emojic 
$ ./math 
The value is 0 
The value is 1 
The value is 16 
The value is 7 
The final value is 3 

正如您所看到的,一切都按照变量用新的数学运算更新的方式打印出来。您可以使用更多可用的数学表情符号来进一步扩展这一点。这里只是一些运算符:

🚮 is your modulo
◀ Less than
▶ Greater than
◀🙌 less than or equal to
▶🙌 greater than or equal to

Emojicode 怪癖

当我在文档中浏览时,我发现了一些有趣的怪癖。其中之一是,在从用户那里获取输入时,由于一些已知的编译器问题,耳朵的肤色很重要。

获取用户输入的动作是这样的:

🆕🔡▶️👂🏼❗️

获取和分配用户输入的动作是这样的:

🆕🔡▶️👂🏼❗️ ➡️ inputText

我试图让它工作,但在我发现这一点时,我的编译器遇到了一些问题。您也可能会在这里和那里遇到一些小问题。如果您遇到,请务必创建一个 issue,这样它就有机会被修复。

没有花招,只有很棒的代码

虽然我可以讲更多内容,但我可以向您保证,这个神奇代码背后的文档非常详尽。尽管我创作这篇文章的灵感仅仅是为了在愚人节期间获得乐趣,但我不得不承认,这是有史以来最好的语言之一,因为它教会了您很多关于非常真实的编程概念的知识。我真诚地建议将这作为一种有趣的方式来教一些对编码感兴趣的朋友、孩子或同学。希望您有一个充满乐趣的愚人节!

标签
User profile image.
技术游民,从事我能找到的几乎任何工作。IT 领域筒仓预防的倡导者,与所有团队共享信息的重要性。相信教育所有人并开源开发。热爱所有技术事物。关于 K8s、混沌以及我能找到的任何新的和闪亮的东西!Mastodon ID

2 条评论

嗨,似乎有一个小小的笔误,install 写成了 intall emojicode。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.