歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Erlang中的模塊與模式匹配

Erlang中的模塊與模式匹配

日期:2017/3/1 9:31:27   编辑:Linux編程

模塊是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 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved