Эрланг - 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.
Sr. No. | Функции и описание BIF |
---|---|
1 | свидание Этот метод возвращает текущую системную дату. |
2 | byte_size Этот метод возвращает количество байтов, содержащихся в Bitstring. |
3 | элемент Метод возвращает N-й элемент кортежа. |
4 | плавать Этот метод возвращает значение с плавающей запятой для определенного числа. |
5 | получить Метод возвращает словарь процесса в виде списка. |
6 | положить Этот метод используется для установки key,value пара в словаре процесса. |
7 | местное время Метод используется для определения местной даты и времени в системе. |
8 | объем памяти Возвращает список, содержащий информацию о памяти, динамически выделяемой эмулятором Erlang. |
9 | в настоящее время Этот метод возвращает кортеж {MegaSecs, Secs, MicroSecs}, который представляет собой время, прошедшее с 00:00 по Гринвичу 1 января 1970 года. |
10 | порты Возвращает список всех портов на локальном узле |
11 | процессы Возвращает список идентификаторов процессов, соответствующих всем процессам, существующим в данный момент на локальном узле. |
12 | универсальное время Возвращает текущую дату и время по всемирному координированному времени (UTC). |