Erlang is an [[Apache v2]] licensed bytecode functional programming language whose [[BEAM]] VM is written in [[3. Reference/Software/Programming Languages/C|C]].
- [Website](https://www.erlang.org/)
- [Source](https://github.com/erlang/otp)
- [Documentation](https://www.erlang.org/doc/)
- [Awesome Erlang](https://github.com/drobakowski/awesome-erlang)
- [Try](https://tryerlang.org/#)
> **Erlang** is a programming language and runtime system for building massively scalable soft real-time systems with requirements on high availability.
# Notability
Erlang has a lot of very interesting features even though the syntax is very odd.
## Derivatives
While the [[BEAM]] VM was built for Erlang originally, [[Elixir]] is probably the most popular language using BEAM.
- [[Elixir]]
- [[Gleam]]
- [[Alpaca (programming language)]] - https://github.com/alpaca-lang/alpaca
- [[Caramel (programming language)]] - https://github.com/leostera/caramel
- Purerl, Erlang backend for PureScript - https://github.com/purerl/purerl
> Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.
# Philosophy
# OS Support
- [[Linux]]
- [[FreeBSD]]
- [[MacOS]]
- [[Windows]]
- [[Haiku]] (unofficial [port](https://depot.haiku-os.org/__multipage/pkg/erlang/haikuports/haikuports_x86_64/20/1/-/-/3/x86_64?locale=pt))
# Features
```dataview
TABLE WHERE contains(file.name, "Erlang") OR contains(tags, "erlang")
```
# Tips
# Resources
- Alternative VM: https://www.atomvm.net/
# References
- https://www.tutorialspoint.com/erlang/index.htm
- https://www.erlang.org/doc/reference_manual/functions#function-declaration-syntax