Tracks
/
Elixir
Elixir
/
Temario
/
Bibliotecas de Erlang
Bi

Bibliotecas de Erlang en Elixir

8 ejercicios

Acerca de Bibliotecas de Erlang

El código de Elixir se ejecuta en la máquina virtual BEAM. BEAM forma parte del sistema de ejecución de Erlang. Al estar inspirado en Erlang y compartir su entorno de ejecución, Elixir ofrece una gran interoperabilidad con las bibliotecas de Erlang. Esto significa que quienes desarrollan en Elixir pueden usar bibliotecas de Erlang desde su propio código de Elixir. De hecho, en la comunidad de Elixir se desaconseja escribir bibliotecas de Elixir para funcionalidad que ya ofrecen las bibliotecas de Erlang.

Como resultado, ciertas funcionalidades, como las operaciones matemáticas o las funciones de temporizador, solo están disponibles en Elixir a través de Erlang.

Esta estrecha relación entre Elixir y Erlang significa que, para convertirte en un desarrollador competente de Elixir, quizá quieras dedicar algo de tiempo a aprender la sintaxis básica de Erlang.

Cómo usarlas

La biblioteca estándar de Erlang está disponible para usarla en nuestro código de Elixir sin necesidad de pasos adicionales.

Las funciones de Erlang se pueden llamar de la misma manera en que llamamos a las funciones de Elixir, con una pequeña diferencia. Los nombres de los módulos de Erlang son átomos en snake_case. Por ejemplo, para llamar a la función pi/0 de Erlang desde el módulo math, se escribiría:

:math.pi()
# => 3.141592653589793

Los módulos de Erlang más usados

Los módulos de Erlang más usados ofrecen funcionalidad que la biblioteca estándar de Elixir no tiene. Son los siguientes:

  • El módulo timer, que ofrece funciones como sleep/1, send_after/2 y send_interval/2.
  • El módulo rand, que ofrece funciones como uniform/0, normal/0 y seed/2.
  • :io_lib.format/2, que ofrece formato de strings al estilo de C (usando secuencias de control).
  • El módulo math, que ofrece funciones matemáticas como sin/1, cos/1, log2/1, log10/1, pow/2 y muchas más.
  • El módulo queue, que ofrece una estructura de datos de tipo cola.
  • El módulo crypto, que ofrece funciones criptográficas.
  • El módulo zip, que ofrece funciones para trabajar con archivos zip.
  • El módulo calendar, que ofrece funciones para trabajar con fechas y horas, como iso_week_number/1. Para pasar una struct Date, Time o NaiveDateTime a una de las funciones de Erlang, hay que convertirla al formato de Erlang con una función to_erl del módulo correspondiente.

Para descubrir la biblioteca estándar de Erlang, explora el Manual de referencia de STDLIB.

La interoperabilidad de Elixir con las bibliotecas de Erlang no se limita a la biblioteca estándar de Erlang. Cualquier biblioteca de Erlang se puede usar en el código de Elixir.

Editar en GitHub El enlace se abre en una ventana o pestaña nueva

Aprende Bibliotecas de Erlang

La práctica está bloqueada

Desbloquea 2 ejercicios más para practicar Bibliotecas de Erlang