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 мы используем функцию memory для вывода системного времени.
date | Этот метод возвращает текущую системную дату. |
byte_size | Этот метод возвращает количество байтов, содержащихся в битстроке. |
element | Метод возвращает N-й элемент в кортеже. |
float | Этот метод возвращает значение float определенного числа. |
get | Метод возвращает словарь процесса как список. |
put | Этот метод используется для ввода пары ключ, значение в словарь процесса. |
localtime | Метод используется для указания локальной даты и времени в системе. |
memory | Возвращает список, содержащий информацию о динамически распределенной памяти эмулятора Erlang. |
now | Этот метод возвращает кортеж {MegaSecs, Secs, MicroSecs}, прошедший с 00:00 по Гринвичу, 1 января 1970 года. |
ports | Возвращает список всех портов на локальном узле |
processes | Возвращает список идентификаторов процессов, соответствующих всем процессам, существующим на локальном узле. |
universaltime | Возвращает текущую дату и время в соответствии с Универсальным временным временем (UTC). |
0 комментариев