erlang学习手记
ubuntu10.04下erlide for eclipse安装
网址:http://erlide.sourceforge.net/
3.5版本的eclipse,直接用url http://erlide.org/update 安装
安装后,还需要erlang的环境:
sudo apt-get install erlang
现在还不能打开文件,会报空指针错误,选择window->preferences->erlang->installed runtimes
把location选择到 /usr/lib/erlang 即可使用。
[把build automatically关掉,这插件还是不怎么靠谱的,用来写写代码就完了,要编译还是走命令行]
erlang学习要点:
(1)-module(xx).
注意前面的杠(-)和后面的点(.) 类似java的package,文件名要求为xx.erl,与module里名字相同。
(2)-export([double/1]).
同样注意杠和点。表示模块内的函数为double,包含一个参数。
扩展:多个声明这样写 -export([fac/1, mult/2]).
(3)模式匹配
xxxx->aaaa;
箭头的用意:节省代码,不需要if…else…对应前面执行箭头后面。
(4)变量只能单次赋值
首字母必须大写。
(5)元子
以小写字母开头。只是一个名字。类似java的常量。
(6)元组
{inch,Y}
{moscow,{c,-10}}
元组中有元素。
(7)列表
[{},{},{}]
列表不一定要写在一行,不可以在元子或者整数中间分段。
一个很有用的遍历列表的方法是“|”
(8)guard满足条件之后才会执行后面的
大于> 小于< 等于== 大于等于>= 小于等于 Action 1;
condition 4 -> Action 4
end.
最后一个没有分号。
case XXX of
xxx->
xxx;
yyy->
yyy
end.
最后一个条件没有分号。
(11)io:format
~p很长的时候断行
~w输出
~n回车
(12)spawn和receive以及!还有self()
spawn启动一个process
receive等待来自其它进程的消息
!用来发消息:Pid!Message
self()表示正在运行的进程ID
(13)register
将一个进程名字注册为一个名字。
(14)头文件
*.hrl
-include(“xxx.hrl”).
(15)宏
-define(SERV_NODE,messenger@super).
?SERV_NODE
(16)记录
-record(message_to,{to_name,message}).
message_to{to_name=aaaa,message=”hello”}
将得到{message_to,aaaa,”hello”}
建议继续学习:
- whatsapp深度使用Erlang有感 (阅读:5287)
- Erlang match_spec引擎介绍和应用 (阅读:5202)
- php-erlang (阅读:4886)
- gen_tcp调用进程收到{empty_out_q, Port}消息奇怪行为分析 (阅读:3944)
- hibernate使用注意事项 (阅读:3846)
- Erlang如何限制节点对集群的访问之net_kernel:allow (阅读:3593)
- Erlang linkin driver用port_control方式时的一些经验分享 (阅读:3532)
- ERLANG OTP源码分析 – gen_server (阅读:3262)
- gen_tcp容易误用的一点解释 (阅读:3092)
- “好奇号”火星车和它搭载的软件(来自Erlang程序员的观点) (阅读:3963)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:54chen 来源: 五四陈科学院-坚信科学,分享技术
- 标签: erlang
- 发布时间:2011-04-28 13:25:55
-
[928] WordPress插件开发 -- 在插件使用 -
[134] 解决 nginx 反向代理网页首尾出现神秘字 -
[53] 整理了一份招PHP高级工程师的面试题 -
[52] 如何保证一个程序在单台服务器上只有唯一实例( -
[51] 海量小文件存储 -
[51] 用 Jquery 模拟 select -
[50] 全站换域名时利用nginx和javascri -
[50] Innodb分表太多或者表分区太多,会导致内 -
[49] CloudSMS:免费匿名的云短信 -
[47] jQuery性能优化指南
