`
cnDenis
  • 浏览: 100446 次
  • 来自: 广州
社区版块
存档分类
最新评论

初识Erlang,Hello World

阅读更多

初识Erlang,Hello World

by cnDenis 2013年3月12日

这两天开始玩Erlang,咱们从Hello World开始吧。

先是要到官网http://www.erlang.org/download.html下载安装包,安装上,设置好系 PATH,然后打开命令行,输入erl,如果看到类似于

Eshell V5.10.1  (abort with ^G)
1>

的话,就表示Erlang安装成功。这东西叫做Erlang的Shell。

然后就是最经典的Hello World:

随便用一个文本编辑器输入:

-module(helloworld).
-export([hw/0]).

hw() -> io:format("Hello World! ~n").

保存为helloworld.erl,然后在命令行下进入该文件所在目录,进入Erlang Shell,输 入>后的命令:

1> c(helloworld).
{ok,helloworld}
2> helloworld:hw().
Hello World!
ok

Yeah,Hello World完成!(我会告诉你我用了20分钟干这事么,下面是各种坑的介绍)

% 首先,Erlang的注释符是百分号哦
-module(helloworld).  
% -module是必要的,这可不是Bash或Python,上来就可以Echo或Print
% 然后,helloworld 必须与文件名相同(除了不用加.erl)
% 然后,行末的句点是必须的,虽然好不显眼

-export([hw/0]).
% -export也是必须的,这是用来说明哪些函数可以在外部被调用
% 括号中必须是一个列表,换言之,加方括号
% hw是函数名,斜杠后面是参数的数目,两者总是组合指明一个函数。
% 参数数目不同的,即使同名,也是两个不同的函数
% 还是记得句尾要加点

hw() -> io:format("Hello World! ~n"). 
% 这个是函数了
% 函数名前面不用任何修饰,类似于其他语言中的Fun,def之类在这里是不必要的
% 函数名是一个“原子”,换言之就是一个以小写字母开头的单词,可后继大小写字母下划线和@号
% 或是你足够蛋疼的话,可以用单引号括起来的任意东西,比方说 '*&^%hw2'
% 还有,不要拿fun当函数名,这个词另有用途
% 函数名后面加括号,如果有参数,写在括号中
% 括号后是 -> 这不是C语言中的指针,而是表示后面是函数的内容了
% io:format可以当print,其实就是io模块里的format函数
% 看清楚模块名和函数名之间是冒号,别弄成其他语言中的点
% 双引号中是字符串,Erlang中的字符串实质上是数组
% ~n是换行,用波浪线转义
% 最后还是别忘记了是句点

这个erl文件的坑说完了,然后是Erlang Shell中的。

想用erl xxxxx.erl来执行是徒劳的,这货不是sh也不是python也不是pl,这么做你会 进入Erlang Shell。

然后先是要c(helloworld).编译,记得不要忘记句点。然后同一个目录下就会出现一个 同名的beam文件。

然后键入helloworld:hw().,回车没反应?又忘记句点了,补上,Hello World终于蹦 出来了。

分享到:
评论

相关推荐

    HelloWorld-main.zip

    【HelloWorld-main.zip】是一个包含了多种编程语言的“Hello, World!”程序源代码的压缩包。这个资源对于初学者来说非常有价值,因为它涵盖了从传统到现代的多种编程语言,可以帮助新接触编程的人快速理解每种语言的...

    各种程序语言的Hello_World程序

    module HelloWorld (main) where main = putStrLn "Hello World!\n" ``` **解析:** - Haskell是一种纯函数式编程语言。 - `module`定义模块。 - `putStrLn`用于输出字符串。 #### Icon ```icon procedure main() ...

    RabbitMQ hello world源码

    "RabbitMQ hello world源码"通常是指一个简单的示例,用于展示如何在RabbitMQ中发送和接收消息。这个例子可以帮助初学者快速理解RabbitMQ的基本工作原理和API使用。 **发送端(Producer)** 在RabbitMQ的"hello ...

    RabbitMQ-HelloWorld:RabbitMQ的Hello World示例

    在RabbitMQ的"Hello World"示例中,首先要做的是建立一个到RabbitMQ服务器的连接,并创建一个信道。信道是RabbitMQ中的工作线程,通过它我们实际执行发布和消费消息的操作。 ```csharp using RabbitMQ.Client; ...

    esl-erlang_23.0_windows_amd64.exe rabbitmq-server-3.8.4.exe

    esl-erlang_23.0和rabbitmq-3.8.4windows版本 直接下载安装就行,可以直接下载就可安装,非常的方便...4. erlang安装后要检查能否编译成功一个helloworld文件。 5. rabbitMQ无法安装插件时非常有可能是erlang出问题了。

    RabbitMQ系列(一)入门Helloworld

    **RabbitMQ系列(一)入门Helloworld** RabbitMQ是一种开源的消息代理和队列服务器,它基于AMQP(Advanced Message Queuing Protocol)协议,广泛应用于分布式系统中的异步处理和解耦。在这个系列的第一部分,我们...

    erlang学习1.pdf

    **运行程序**:启动Erlang Shell,并调用`helloworld:sayhello()`执行程序。 #### 三、TCP客户端实现 - **基本需求**:实现一个简单的TCP客户端,可以连接至Web服务器并显示服务器返回的数据。 - **实现过程**: ...

    erlang编程 Introducing Erlang

    **Erlang编程:Introducing Erlang** Erlang是一种函数式编程语言,由爱立信在1986年开发,主要用于构建高可用性、容错性和并发性的分布式系统。"Introducing Erlang"是Simon St. Laurent撰写的一本入门级教程,...

    erlang_版本24.3.4.4

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson开发,主要用于构建高可用性、分布式和实时系统。版本24.3.4.4是Erlang的一个更新版本,包含了对先前版本的改进和修复。Erlang以其强大的错误...

    erlang25.0 windows版本

    Erlang是一种高级编程语言,特别适用于并发、分布式和实时系统。它由Ericsson公司开发,主要用于构建高可用性、容错性和可扩展性的软实时系统。Erlang的25.0版本是该语言的一个更新,针对Windows操作系统进行了优化...

    erlang资源

    这个“erlang资源”包含两本PDF书籍——《Erlang并发编程》和《Erlang入门手册》,它们是深入理解和学习Erlang语言的关键资料。 《Erlang并发编程》这本书可能涵盖了以下知识点: 1. **并发模型**:Erlang的并发...

    erlang22最新下载包

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson为了实现分布式实时、高可靠性系统而开发。Erlang以其强大的并行处理能力、容错性和易于构建大规模分布式系统的特点,在电信、金融和互联网等...

    Erlang/OTP 26.2.1

    Erlang/OTP 26.2.1,Erlang,OTP,26.2.1

    Erlang23_3.zip

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson于1986年开发,主要用于构建高可用性、分布式系统。Erlang的设计目标是支持大量并发连接,容错性强,易于编写实时系统。Erlang采用actor模型...

    Erlang官网下载过慢

    Erlang是一种面向并发的、函数式编程语言,主要用于构建高度可扩展的、容错性强的分布式系统。在IT行业中,Erlang因其强大的实时性和处理大量并发连接的能力而被广泛应用于电信、互联网基础设施和实时系统。RabbitMQ...

    erlang 环境配置文档说明

    此时应看到控制台输出 `helloWorld`。 以上步骤展示了如何在Windows环境下安装配置Erlang及其开发工具,包括Eclipse和Erlide插件,并创建简单的Erlang项目及模块,最后演示了如何编译和运行Erlang程序。这将有助于...

    ErlangB和ErlangC计算工具(exe可执行文件+excel两个)

    Erlang B和Erlang C是电信领域中两种重要的流量模型,用于预测和分析通信系统中的呼叫处理能力和拥塞情况。这两个模型由丹麦工程师Agner Krarup Erlang在20世纪初提出,至今仍广泛应用于现代通信网络的设计与优化。 ...

    xiandiao_erlang_Erlang课后习题_

    【Erlang编程语言及其应用】 Erlang是一种并发式、函数式的编程语言,由瑞典电信设备制造商Ericsson开发,最初用于构建高可用性、容错性和可扩展性的分布式系统。"xiandiao_erlang_Erlang课后习题_"这个压缩包文件...

    erlang安装包.zip

    erlang安装包

Global site tag (gtag.js) - Google Analytics