Erlang语言学习入门

简介:

近期研究RabbitMQ,发现它是基于Erlang实现的,于是对Erlang这么语言发生了兴趣,官网地址 http://www.erlang.org/ ,去下载一个最新的版本,我下载的是5.9.1版本,Windows版本R15B01 Windows Binary File (90.7 MB) ,   下载后一路解压安装即可,不用单独做什么设置,Erlang语言就可以使用了,然后就可以开始使用它里面的 Eshell程序 进行编程。

这是一个命令行程序,可以直接在里面输入表达式进行计算,例如来一个简单的:

 

复制代码
Erlang R15B01 (erts-5.9.1) [smp:4:4] [async-threads:0]

Eshell V5.9.1  (abort with ^G)
1> 100+300.
400
2> 
复制代码

 

注意在语句的结尾输入“.”以表示完成,回车就开始计算结果了,如上面所示。

下面,我们用记事本写一个阶乘的Erlang程序:

 

复制代码
- module(test).
- export([fac/1]).

fac(0) -> 1;
fac(N) -> N * fac(N-1). 
复制代码

这个程序定义了一个叫做 “test”的模块,里面包含一个名字叫做fac的函数,该函数有1个参数。

按照Erlang的约定,文件名必须跟模块名称一致,于是我们将这个文件保存为 “test.erl”,文件保存在D:\test1目录下。

问题来了,怎么运行这个文件呢?使用 cd 方法,改变Erlang当前的工作路径:

 

2> cd("d:/test1").
d:/test1
ok
3> 

然后编译刚才的程序文件:

 

ok
3> c(test).
{ok,test}
4> 

注意,编译命令c 的参数写 明文件里面定义的模块名称即可,也不用加双引号。编译后,将在当前工作目录下面生成文件“test.beam”

然后,可以执行模块中的方法了:

 

复制代码
4> fac(10).
** exception error: undefined shell command fac/1
5> test:fac(10).
3628800
6> 
复制代码

注意,这里是使用自定义的“外部模块”,所以执行的时候需要写明 模块名称:方法名称(参数)。

 

如果下次需要重新加载编译好的程序怎么办?

很简单,使用 l(模块名称) 即可,如下例:

 

复制代码
6> l(test).
{ module,test}
7> test:fac(4).
24
8> 
复制代码

到此为止,安装、编写、编译、运行、加载 一个Erlang 语言程序的全过程就完成了,入门过程还是很简单吧?

 

Erlang 学习参考:

 

Erlang Programming拾零

 

用Erlang实现领域特定语言

 

另外安装后,它本身的帮助文档也比较全面,初学已经完全够用了。



    本文转自深蓝医生博客园博客,原文链接http://www.cnblogs.com/bluedoctor/archive/2012/09/03/2668053.html:,如需转载请自行联系原作者



相关文章
|
6月前
|
存储 JSON 数据库
探索Perl语言:入门学习与实战指南
探索Perl语言:作为一门高效脚本语言,Perl擅长系统管理、文本处理和Web开发。它以其灵活语法、正则表达式支持和CPAN模块库著称。本文涵盖Perl概述、安装配置、基本语法、数据类型、控制结构、子程序、模块、文件操作、正则表达式、常用模块(如DBI、LWP、JSON)和实战案例,助你快速入门。了解Perl,提升你的编程技能!
112 2
探索Perl语言:入门学习与实战指南
|
6月前
|
Unix Linux 开发者
Perl 语言入门学习
Perl 语言入门学习
|
8月前
|
Java
开发语言漫谈-erlang
erlang又是一个应用邻域狭窄的语言
|
7月前
|
网络协议 Unix Shell
技术笔记:perl语言入门(转)
技术笔记:perl语言入门(转)
34 0
|
7月前
|
自然语言处理 编译器 C语言
C++语言入门教程
C++语言入门教程
|
数据可视化 数据挖掘 项目管理
R 语言入门与介绍
R 语言入门与介绍
90 0
|
算法 Ruby
【Ruby on Rails全栈课程】2.1 ruby语言入门
在第一章中,项目我们已经创建好并且能输出第一个helloworld了,我们先不急着做项目,先了解一下ruby,只是需要看得懂代码。这一章我们简单介绍一些ruby语言的语法
178 0
|
Rust IDE JavaScript
Rust语言教程(2) - 从熟悉的部分开始
虽然有默认不变性还有所有权的问题让Rust一上来用起来有些不同,但是其实大部分语法特点还是我们所熟悉的。 我们没必要上来就跟自己死磕,可以先从我们熟悉的部分开始学习。 一般我们写代码,使用的主要是数据类型、控制结构和函数。我们就从这三部分开始。
436 0
Rust语言教程(2) - 从熟悉的部分开始
|
存储 C语言 开发者
什么是编程语言 | 手把手教你入门Python之六
编程语言就是用来定义 计算机程序 的形式语言。我们通过编程语言来编写程序代码,再通过语言处理程序执行向计算机发送指令,让计算机完成对应的工作。
什么是编程语言 | 手把手教你入门Python之六
haskell简明入门(一)
本文的主要内容参考自《Haskell趣学指南》 1. What is Haskell?     以下内容引用自Haskell官网: Haskell是一个先进的,纯粹的函数式编程语言。一个典型的声明式地,静态类型的代码如下: primes = filterPrime [2.
1516 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等