Erlang – BIFS

Erlang BIFS

In this guide, we will discuss Erlang BIFS. BIFs are functions that are built into Erlang. They usually do tasks that are impossible to program in Erlang. For example, it’s impossible to turn a list into a tuple or to find the current time and date. To perform such an operation, we call a BIF.

Let’s take an example of how BIF’s are used −

Example

-module(helloworld). 
-export([start/0]). 

start() ->   
   io:fwrite("~p~n",[tuple_to_list({1,2,3})]), 
   io:fwrite("~p~n",[time()]).

The following things need to be noted about the above example −

  • In the first example, we are using the BIF called tuple_to_list to convert a tuple to a list.
  • In the second BIF function, we are using the time function to output the system time.

The output of the above program will be as follows −

Output

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

Let’s look at some of the more BIF functions available in Erlang.

Sr.No.BIF Functions & Description
1date
This method returns the current system date.
2byte_size
This method returns the number of bytes contained in a Bitstring.
3element
The method returns the Nth element in the tuple.
4float
This method returns the float value of a particular number.
5get
The method returns the process dictionary as a list.
6put
This method is used to put a key,value pair in the process dictionary.
7localtime
The method is used to give the local date and time in the system.
8memory
Returns a list containing information about memory dynamically allocated by the Erlang emulator.
9now
This method returns the tuple {MegaSecs, Secs, MicroSecs} which is the elapsed time since 00:00 GMT, January 1, 1970.
10ports
Returns a list of all ports on the local node
11processes
Returns a list of process identifiers corresponding to all the processes currently existing on the local node.
12universaltime
Returns the current date and time according to Universal Time Coordinated (UTC).

Next Topic : Click Here

This Post Has One Comment

Leave a Reply