模塊是Erlang的基本代碼單元,erl文件編譯後以.beam作為擴展名,采用UTF8字符集,.erl文件示意如下:
-module(模塊名,與存放模塊的文件名相同)
-export([方法名/輸入參數的個數])
Method1( {a,b,c})->a*b*c;
Mehtod2({d,e})->d-e.
模塊屬性有兩種類型:預定義型和用戶定義型。
Erlang中用於代表函數的數據類型被稱為fun,相當於python中的lambda,一般用於
1) 對列表裡的每個元素執行相同的操作
2) 創建自己的控制
3) 實現可重入解析代碼,解析組合器或者lazy evaluator
模式匹配是erlang的根基,case和if表達式使erlang小而一致。
case Expression of
Pattern1[ when Guard1] -> Expr-seq1;
Pattern2[when Guard2]-> Expr-seq2;
…
end
if
Guard1-> Expr_seq1;
Guard2-> Expr_seq2;
…
end
erlang有兩種方法來捕捉異常錯誤,一種是把拋出異常的調用函數封裝在一個try_catch 表達式裡,提供了概括信息,另一種是把調用封裝在一個catch表達式裡,提供了詳細的棧跟蹤信息。在捕捉到一個異常後,可以調erlang:get_stacktrace()來找到最近的棧信息。
把二進制型,位串,和位級模式匹配引入erlang是為了簡化網絡編程。二進制型是置於雙小於號和雙大於號之間的一列整數或字符串。例如: 1> Mybin1 = << “ILOVE YOU”>>
Term_to_bingary(Term) ->Bin 轉換為二進制型
Binary_to_Term(Bin) ->Term 二進制型轉換為Erlang的數據類型
精心選擇宏的名稱和Erlang代碼布局,能最大限度地縮小C和Erlang的語義鴻溝。在Erlang裡,最小的尋址單元是1位,位串裡的位序列可直接訪問。
在CentOS上編譯安裝Erlang R15B http://www.linuxidc.com/Linux/2012-03/57663.htm
Ubuntu 11.10 搭建Erlang環境 http://www.linuxidc.com/Linux/2012-04/58208.htm
在 CentOS 5.7 上通過 YUM 安裝 Erlang 過程 http://www.linuxidc.com/Linux/2012-12/75622.htm
Erlang---啟動參數學習/研究 http://www.linuxidc.com/Linux/2011-07/39157.htm
CentOS 5.5 下源代碼編譯安裝 Erlang http://www.linuxidc.com/Linux/2011-07/39156.htm
Ubuntu 10.10下源碼安裝Erlang 5.8.3版本 http://www.linuxidc.com/Linux/2011-04/34863.htm
在 CentOS 6.4上安裝Erlang http://www.linuxidc.com/Linux/2013-06/85964.htm
Ubuntu 下 Erlang R16B 的安裝 http://www.linuxidc.com/Linux/2013-05/84235.htm
Erlang 的詳細介紹:請點這裡
Erlang 的下載地址:請點這裡