Batteries Included
The list of modules that comes with Erlang is extensive. It can be hard for
a new user of Erlang to know how to approach this list.
This is a break down of modules you will most likely make use of.
Data Structures
- lists
- Manipulate Erlang lists, commonly used higher order functions
- proplists
- Manipulate lists of “property” values
- dict
- Key/value dictionary
- sets
- Collection of unique elements
- queue
- FIFO queues
- orddict
- Ordered dictionaries
- ordsets
- Ordered sets
- string
- String manipulation
- unicode
- Unicode manipulation
Data Storage and Retrieval
- ets
- In memory Erlang term storage
- dets
- On disk Erlang term storage
Files
- file
- Higher level file operations
- filelib
- Lower level file operations
- filename
- File name manipulation
Date/Time
- calendar
- Miscellaneous date and time functions
Networking
- inet
- Various TCP/IP functions
- gen_tcp
- Interface to TCP/IP sockets
- gen_udp
- Interface to UDP sockets
- gen_sctp
- Interface to SCTP sockets
General IO
- io
- IO server functions
- io_lib
- IO library functions
Regular Expressions
- re
- Regular expression support
Erlang System
- erlang
- Erlang BIFs (built in functions)
- sys
- Interface to Erlang system messages
- init
- Coodination of Erlang system startup
Operating System
- os
- Operating system functions
File Archives and Compression
- zip
- Read and create zip archives
- zlib
- ZLIB compression support
Hash Digests and Cryptography
- base64
- base64 encoding and decoding
- crypto
- Cryptographic functions
General Computation
- math
- Common mathematical functions
- random
- Pseudo random number generation
Testing
- eunit
- EUnit support
- ct
- Common Test support
Debugging
- dbg
- Text based tracing
- debugger
- Graphical debugger
Developer Utilities
- edoc
- Documentation generator
- cover
- Coverage analysis
- cprof
- Call count profiling tool
- fprof
- Time profiling tool
- dialyzer
- Discrepancy analysis tool
OTP
- application
- OTP application functions
- proc_lib
- Lowed level OTP support
- gen_server
- High level OTP interface for Erlang processes
- supervisor
- Supervise other OTP processes
- gen_event
- Extensible OTP interface for Erlang processes
- gen_fsm
- OTP interface for finite state machines