English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

BIFS في Erlang

BIFs هي وظائف مدمجة في Erlang. عادة ما تنفذ المهام التي لا يمكن برمجتها في Erlang. على سبيل المثال، لا يمكن تحويل القائمة إلى tuple، ولا يمكن العثور على الوقت الحالي وتاريخ النظام. لتنفيذ مثل هذه العمليات، نسميها 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 لتحويل tuple إلى قائمة.

  • في وظيفة BIF الثانية، نستخدموظيفة timeلإخراج وقت النظام.

يبدو مخرج البرنامج كما يلي:

[1,2,3]
{10,54,56}

لنلقي نظرة على وظائف BIF المتاحة في Erlang.

رقم التسلسلوظائف BIF وشرحها
1

date

يُرجع هذا الطريقة تاريخ النظام الحالي.

2

حجم البايت

يعيد عدد الأوساط في نطاق البايت.

3

العنصر

يعيد العنصر النمطي في المجموعة.

4

عائمة

يعيد قيمة عائمة لمستوى معين.

5

الحصول

يعيد قائمة تحتوي على قاموس العمل كقائمة.

6

وضع

يستخدم هذا الطريقةالمفتاح،القيمةيضع زوجًا من المفتاح والقيمة في قاموس العمل.

7

وقت محلي

يستخدم هذا الطريقة لتحديد التاريخ والوقت المحلي في النظام.

8

ذاكرة

يعيد قائمة تحتوي على معلومات حول الذاكرة الموزعة بشكل ديناميكي من قبل محاكي Erlang.

9

الآن

يعيد مجموعة من MegaSecs،Secs،MicroSecs،وهي الوقت الذي مر من تاريخ 1 يناير 1970 عند الساعة 00:00 بتوقيت جرينتش.

10

موانئ

يعيد قائمة بجميع الموانئ الموجودة على النقطة المحلية.

11

عمليات

يعيد قائمة بمعرفات العمليات التي تتعلق بجميع العمليات الموجودة حاليًا على النقطة المحلية.

12

الوقت العالمي

عائد بناءً على الوقت العالمي المعياري (UTC) الحالي التاريخ والوقت.