1 / 25
文档名称:

Erlang编程中文教程.doc

格式:doc   大小:201KB   页数:25页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Erlang编程中文教程.doc

上传人:zxwziyou8 2018/6/20 文件大小:201 KB

下载得到文件列表

Erlang编程中文教程.doc

文档介绍

文档介绍:Erlang 编程(第一部分)
1 顺序编程
The Erlang Shell
大多数操作系统都有一个命令行交互环境或者一个shell,对于UNIX和LINUX尤其是这样。Windows也有自己的命令行模式。Erlang也同样有自己的shell,我们可以直接在里面编写代码和运行我们编写的程序,并在其中看到我们的输出情况。我们能够在多种操作系统上运行Erlang的shell,一般来说在我们所使用的操作系统的命令行中输入erl就可以了,我们将可能看到下面的提示:
% erl
Erlang (BEAM) emulator version [source] [hipe]
Eshell (abort with ^G)
1>
现在我们输入“2 + 5.”,(注意最后有一个英文句号,并不包括引号哈)
1> 2 + 5.
7
2>
在Windows中,我们还可以通过双击Erlang shell的图标来启动Erlang shell。
你现在注意到了Erlang shell的命令行前面都有一个标号(例如1> 2>),并且下面正确的输出了我们的答案“7”!同样我们注意到我们的输入的最后有一个英文的句号,这是在我们最终按下回车之前的最后一个字符。如果我们写在shell中的东西有什么错误,我们可以使用退格键进行删除,于是,我们推想我们可以使用其他shell下的一些常用的编辑命令,而事实上确实是这样的,以后我们使用到的时候再介绍。
现在我们尝试一下稍微复杂一点的运算:
2> (42 + 77) * 66 / 3.

我们现在使用了一些“复杂一点”的运算符号“*”和“/”,分别表示乘法运算和除法运算。除此之外还支持其他一些运算符号,我们在以后使用到的时候再介绍。
我们打算关闭Elrang系统,则需要在Erlang shell中键入Ctrl+C,我们将看到下面的输出:
BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded
(v)ersion (k)ill (D)b-tables (d)istribution
a
%
我们这时候键入“a”就会退出Erlang系统。
另一个方法就是键入 halt(),也可以实现退出Erlang系统的目的:
3> halt().
%
Modules 和 Functions (模块和函数)
一个编程语言如果只能让我们从shell中运行代码,那么可以说这个语言的用处受到了很大的限制,至少我会感觉到不爽。这里有一个小的Erlang程序。(,文件名应该和模块名相同,这样Erlang才能很好的找到我们的模块,至于编辑器随便一个支持纯文本的就可以哈)。如果我们的编辑器有一个Erlang模式就可能编写起来更加方便,并且代码的格式也会变得更加规范,但是我们也许也会产生对这些编辑器或者IDE的强烈依赖性。下面就是我们要键入的代码:
-module(tut).
-export([double/1]).
double(X) ->
2 * X.
不难看出,我们的程序的任务就是将输入的数字进行“乘以2”的操作。我们后面会解释前两行的含义。我们现在来编译一下这个程序,我们在Erlang shell中键入下面的内容:
3> c(tut).
{ok,tut}
{ok,tut} 告诉我们编译成功的完成了。如果显示的是“error”,那么可能我们的文件位置或者键入的代码文本存在某些问题,出错信息会给我们一些提示,我们按照提示做就好了,仔细的检查代码在任何时候都是需要的: )
现在我们来运行以下这个程序:
4> tut:double(10).
20
和预计的一样,10的“乘以2”之后是20(貌似是废话)。
现在让我们回到最开始的两行代码。Erlang程序一般是保存在文件中的。每个文件我们在Erlang中称为module(模块)。第一行就是告诉我们这个模块的名字。
-module(tut).
这段代码告诉我们该模块的名称为“tut”。注意这行最后的“.”符号是必不可少的。这个模块名必须和保存这段代码的文件(后缀为“erl”的文件)有相同的名称。所以这里我们要求了文件名必须是“”的原因。当我们在使用另一个模块中的函数时,我们使用下面的语法module_name:function_name(arguments).所以:
4> tut:double(10).
意味着我们从tut模块中调用一个叫做double的函数,并且带有参数

最近更新

2021年二年级语文上册期中考试卷及答案一 6页

2021年四年级数学上册期中考试卷(通用) 6页

2021年语文版四年级语文下册期末试卷汇总 7页

2021年部编版五年级语文(下册)期中模拟题及答.. 8页

2022年人教部编版三年级语文下册期末测试卷(审.. 6页

2022年部编人教版一年级语文下册期末考试(一套.. 4页

2022年部编版三年级语文下册期末测试卷【参考.. 6页

2022新人教版五年级下册《道德与法治》期末考.. 5页

整形医院礼仪培训 57页

人教版三年级下册语文期末考试卷(1套) 7页

人教版六年级语文下册期末达标考试题 8页

人教版四年级语文下册期末测试卷(汇编) 7页

人教部编版四年级语文下册期末考试(学生专用).. 7页

国内外文化旅游研究综述 19页

人际交往团体方案设计 9页

四年级语文下册期末试卷及答案【下载】 7页

小学二年级语文上册第一次月考试卷及答案一(三.. 13页

新人教版二年级语文上册一单元试卷及答案A4打.. 35页

新人教版六年级语文下册期末考试及答案【最新.. 8页

新人教部编版三年级语文下册期末模拟考试及完.. 6页

新版人教版三年级语文下册期末试卷(审定版) 6页

新版部编版四年级语文下册期中试题(审定版) 6页

新部编人教版二年级语文下册期末考试卷及答案.. 6页

新部编人教版四年级语文下册期中阶段测考试卷.. 7页

新部编版三年级语文下册期末测试卷(一套) 7页

新部编版六年级语文下册期中试卷(完美版) 7页

最新人教版二年级语文下册期末测试卷(加答案).. 5页

最新人教版六年级语文下册期末试卷及参考答案.. 7页

最新人教部编版三年级语文下册期末考试及答案.. 7页

最新苏教版四年级数学上册期中考试及答案【各.. 6页