Funciones -> Funciones Misma entrada, misma salida Efecto Vegas: Lo que pasa en la función se queda en la función.
- .exs -> Script como buena práctica siempre finaliza con s
- .ex -> Compilar
- Sistema de macros
- Patter matching
- Zero-index access
- Keyword arguments
- Expresiones regulares
Código Elixir -> Abstract Syntax Tree -> Código de Bite de BEAM -> Código Máquina
- Facilidad de aprender
- Compatibilidad
- Extensibilidad
- Productividad
- Documentación MD -> Python
- Herramientas(ExUnit, IEx, Mix) -> Go, JS
- Paquetes(Hex) -> Ruby
- REPL
- Releases(exrm)
- erts = Erlang Runtime System
- smp = Simetric multi processign
- Async Threads = Number of threads erlang raise
- hipe = código fuente a código procesador
- dtrace = Trackeo chido
========================================
iex(1)> h <<module>>
Muesta información del módulo
iex -S mix
Permite utilizar el código en el Shell intereactivo
¿Sentencias o expresiones? En lenguajes funcionales se usa el estilo declarativo utilizando expresiones.
Expresiones: tienen valor asociado Sentencia: no tiene valor asociado
defmodule Geometry do
def rectangle_area(a, b) do
a * b
end
end
La última operación que realiza la función es lo que retorna.
Se pueden anidar módulos.