แอร์ลัง - BIFS
BIF เป็นฟังก์ชันที่สร้างขึ้นใน Erlang พวกเขามักจะทำงานที่เป็นไปไม่ได้ที่จะตั้งโปรแกรมใน Erlang ตัวอย่างเช่นเป็นไปไม่ได้ที่จะเปลี่ยนรายการให้เป็นทูเพิลหรือค้นหาเวลาและวันที่ปัจจุบัน ในการดำเนินการดังกล่าวเราเรียกว่า BIF
มาดูตัวอย่างการใช้งาน BIF -
ตัวอย่าง
-module(helloworld).
-export([start/0]).
start() ->
io:fwrite("~p~n",[tuple_to_list({1,2,3})]),
io:fwrite("~p~n",[time()]).
สิ่งต่อไปนี้ต้องสังเกตเกี่ยวกับตัวอย่างข้างต้น -
ในตัวอย่างแรกเราใช้ BIF ที่เรียกว่า tuple_to_list เพื่อแปลงทูเพิลเป็นรายการ
ในฟังก์ชัน BIF ที่สองเรากำลังใช้ไฟล์ time function เพื่อส่งออกเวลาของระบบ
ผลลัพธ์ของโปรแกรมข้างต้นจะเป็นดังนี้ -
เอาต์พุต
[1,2,3]
{10,54,56}
ลองดูฟังก์ชั่น BIF เพิ่มเติมที่มีใน Erlang
ซีเนียร์ | ฟังก์ชัน BIF และคำอธิบาย |
---|---|
1 | วันที่ วิธีนี้ส่งคืนวันที่ของระบบปัจจุบัน |
2 | byte_size วิธีนี้จะส่งคืนจำนวนไบต์ที่มีอยู่ใน Bitstring |
3 | ธาตุ วิธีการส่งคืนองค์ประกอบ N ในทูเปิล |
4 | ลอย วิธีนี้จะคืนค่าลอยตัวของจำนวนเฉพาะ |
5 | ได้รับ วิธีนี้จะส่งคืนพจนานุกรมกระบวนการเป็นรายการ |
6 | ใส่ วิธีนี้ใช้ในการใส่ไฟล์ key,value จับคู่ในพจนานุกรมกระบวนการ |
7 | เวลาท้องถิ่น วิธีนี้ใช้เพื่อระบุวันที่และเวลาท้องถิ่นในระบบ |
8 | หน่วยความจำ ส่งคืนรายการที่มีข้อมูลเกี่ยวกับหน่วยความจำที่จัดสรรแบบไดนามิกโดยโปรแกรมจำลอง Erlang |
9 | ตอนนี้ วิธีนี้จะส่งคืนทูเพิล {MegaSecs, Secs, MicroSecs} ซึ่งเป็นเวลาที่ผ่านไปนับตั้งแต่ 00:00 GMT วันที่ 1 มกราคม 1970 |
10 | พอร์ต ส่งคืนรายการพอร์ตทั้งหมดบนโลคัลโหนด |
11 | กระบวนการ ส่งคืนรายการตัวระบุกระบวนการที่สอดคล้องกับกระบวนการทั้งหมดที่มีอยู่ในโลคัลโหนด |
12 | universaltime ส่งคืนวันที่และเวลาปัจจุบันตาม Universal Time Coordinated (UTC) |