Lua and Elixir
Mix.install([
{:lua, "~> 0.2.1"}
])
Example
defmodule MyAPI do
use Lua.API
deflua double(v), do: 2 * v
end
import Lua, only: [sigil_LUA: 2]
lua = Lua.new() |> Lua.load_api(MyAPI)
{[10], _} = Lua.eval!(lua, ~LUA[return double(5)])
Lua.eval!(lua, ~LUA[return double(5)])
Factorial in Lua
code = ~LUA"""
function factorial(n)
if n == 0 then
return 1
else
return n * factorial(n - 1)
end
end
return factorial(10)
"""
Lua.eval!(code)