erlang

Posted by Dingding on October 3, 2017

示例

% hello world program   % 注释
-module(helloworld).    % 模块定义
-export([start/0]).     % 导出对外方法 
% -import (modulename, [functionname/parameter]). % 导入模块函数

start() ->              % 定义对外方法
   io:fwrite("Hello, world\n"). % 调用外部模块方法

函数

c():载入模块 b():显示绑定 f():清除绑定 f(X):清除指定的绑定 h():展示历史命令 e(N):如果N为正重复此命令N次。如果N是负数,则第N个先前的命令被重复(即,e(-1)重复先前的命令)。

调用

modulename:funcname().

数据类型

  • 数字 在 Erlang 中,有两种类型的数字类型:整数和浮点数;
  • 原子 原子是文字,一个常数的名称。原子被封闭在单引号(‘),如果它不以小写字母开头,或者如果它包含其它字符不是字母数字字符,下划线(_)或 @。 布尔 − 在 Erlang 中布尔数据类型是两个保留原子:true 和 false;
  • 位字符串 字节序列用来存储非类型化的内存区域;
  • 元组 元组是具有固定数量的混合数据类型的术语。在元组中的每一项称为一个元素。元素的数量被认为是元组的大小;
  • 映射 映射是用 键-值关联的可变数量的复合数据类型。映射中的每个键值关联称为关联对。键值对的部分被称为元素。关联对(键-值)的数目被认为是映射的大小;
  • 列表 列表是由可变数量的混合数据类型组成。列表中的每个项被称为一个元素。元素的数量被认为是列表的长度。

变量

  • 变量声明 var-name = var-value
  • 变量不可变,所有变量只能被分配一次
  • 变量名必须以大写开始
  • 打印变量 io:fwrite()

数据类型

算术运算符

      • / rem div

关系运算符

== /= < =< > >=

逻辑运算符

or and not xor

位运算符

band bor bxor bnot