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 −
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.
Output
[1,2,3] {10,54,56}Let’s look at some of the more BIF functions available in Erlang.
S.No | BIF Functions & Description |
---|---|
1 |
date
This method returns the current system date. |
2 |
byte_size
This method returns the number of bytes contained in a Bitstring. |
3 |
element
The method returns the Nth element in the tuple. |
4 |
float
This method returns the float value of a particular number. |
5 |
get
The method returns the process dictionary as a list. |
6 |
put
This method is used to put a key,value pair in the process dictionary. |
7 |
localtime
The method is used to give the local date and time in the system. |
8 |
memory
Returns a list containing information about memory dynamically allocated by the Erlang emulator. |
9 |
now
This method returns the tuple {MegaSecs, Secs, MicroSecs} which is the elapsed time since 00:00 GMT, January 1, 1970. |
10 |
ports
Returns a list of all ports on the local node |
11 |
processes
Returns a list of process identifiers corresponding to all the processes currently existing on the local node. |
12 | universaltime Returns the current date and time according to Universal Time Coordinated (UTC). |
No comments:
Post a Comment