Erlang学习: EUnit Testing for gen_fsm】的更多相关文章

背景:gen_fsm 是Erlang的有限状态机behavior,很实用.爱立信的一位TDD大神写了一篇怎样測试gen_fsm,这个fsm是一个交易系统,负责简单的交易员登陆,插入item,删除item等等,翻译例如以下: 1. Start and Stop 先看下最初版本号的tradepost_tests: -module(tradepost_tests). -include_lib("eunit/include/eunit.hrl"). % This is the main poi…
http://wenku.baidu.com/link?url=AUQR8Hn-e-fEB_lqjXsd8XfapWj1qAK7J05JoBXFib_LlSk5qSOTia8HIxNV1XkeZi-kHFsH18Qb9NED5PKiPb8h6oDFVR6KG75MUSYAAMm Erlang 学习笔记    一.Erlang语言特征重点  1.catch是返回表达式的值或者错误信息的元组 try…catch是可以捕捉不同的错误类型以及有流程控制  2.发送消息永远不会失败,如果尝试发送消息给一个…
来源:http://www.cnblogs.com/puputu/articles/1701012.html 今天介绍erlang的一个非常重要的behaviour,就是gen_fsm-有限状态机,有限状态机的作用非常之多,比如文本解析,模式匹配.游戏逻辑等等方面的处理都是它的强项,所以这个behaviour非常之重要 1. 有限状态机 有限状态机可以用下面这个公式来表达 State(S) x Event(E) -> Actions(A), State(S') 表示的就是在S状态时如果有事件E发…
erlang shell 命令: help(). 可以查看erlang shell内置命令. 比如:m(Mod),可以查看模块Mod. 待续..…
入门 启动Shell 在cmd中输入命令”erl”,百分号(%)表示一个注释的开始,从百分号开始到这行结束的所有文本都被看做是注释. 一个完整的命令需要以一个句点和一个回车结束. 退出erlang的命令是q(). 命令 f() 会让 shell释放它所绑定过的所有变量.即所有的变量都编程自由变量. 变量 所有的变量必须以大写字母开头. Eralng的变量只能被赋一次值,第二次赋值会出现匹配失败的错误.一个变量如果含有一个被赋予的值,就称为绑定变量,否则称为自由变量.一开始所有变量都是自由的. 在…
字符串是双引号,单引号的是atom元组: 下标从1开始 X = {'test1',2,3,4}. element(1,X). 配合模式匹配,可以给元素项命名,直接不用下标标记元素项 列表增删改查 增加: 通过管道符号,把左边的数据添加到右边的列表 [5,4,3|[1,2]]. 两个列表通过 ++ 生成新列表 [1,2,3,4] ++ [7,8,9,10]. 删除: 大列表--小列表,当然是生成新变量了 [1,2,3,4,5,6,7,8] -- [1,2,3,4]. 修改: erlang变量不可以…
Erlang中的表达式必须以.结束才会去执行.如果不加.你在编译环境下按多少次Enter,表达式都不会执行,表达式之间可以用,分隔,以.结尾后所有的表达式都会执行,但是只有最后一个以.结尾的表达式会在编译器中输出执行的结果. 一.值是表达式 任何类型的值都是表达式.如: 1. 3.5. true. 二.计算表达式 任何类型的值的计算是表达式. 1.算术表达式 +     正号-      负号+     加-     减*     乘/     浮点除bnot  按位求反  bnot (-12)…
Erlang可以说和我以前接触过的语言都大不相同,这个从它的类型定义就可以看出来...反正学起来觉得既不熟悉,也不亲切,我估计在用Erlang写应用的时候,整个编程思路都要变一下了.不过存在即是合理的,鉴于Erlang在面向并发,轻量进程,方便的数据处理还有容错性上的巨大优势,还是咬咬牙学吧! 在讲述数据类型前先简单的介绍一下Erlang中的变量,Erlang中的变量和其他语言中的变量相比有三点不同: 1.Erlang不对变量的类型进行定义,它可以被赋值成任何类型的值,Erlang中所有类型的值…
一.安装编译器 在http://www.erlang.org/download.html下载R16B01 Windows Binary File并安装. 二.运行编译器 安装完编译器后,打开安装目录下的werl.exe,就可以进入编译器环境.可以通过toolbar:start().来显示toolbar.通过halt()来退出编译器. 三.配置编译器 用命令init:get_arguments().可以获得编译器的环境配置. [{root,["C:\\PROGRA~2\\ERL510~1.2&qu…
http://wgcode.iteye.com/blog/1007623 第二章 入门 1.所有的变量都必须以大写字母开头,如果要查看某个变量,只要输入变量的名字即可,如果一个变量被赋予值,就称为绑定变量,否则被称为自由变量,一开始所有变量都是自由的. 有一点像Java中的常量,这就是为什么用大写字母的原因. 2.  “=” 近似于一个赋值操作符,是一个模式匹配运算符,当X是自由变量未被赋值时“=”是赋值运算符,否则是模式匹配运算符. 3. “/”除号永远返回浮点数. 4. 原子用来表示不同的非…