Events: Difference between revisions

680 bytes added ,  8 years ago
Added Elixir
(Add LFE version of events based on the Erlang version)
(Added Elixir)
Line 279:
println("[1] Waiting 1 second...")
}</lang>
 
=={{header|Elixir}}==
{{trans|Erlang}}
<lang elixir>defmodule Events do
def log(msg) do
{h,m,s} = :erlang.time
:io.fwrite("~2.B:~2.B:~2.B => ~s~n",[h,m,s,msg])
end
def task do
log("Task start")
receive do
:go -> :ok
end
log("Task resumed")
end
def main do
log("Program start")
pid = spawn(Events,:task,[])
log("Program sleeping")
:timer.sleep(1000)
log("Program signalling event")
send(pid, :go)
:timer.sleep(100)
end
end
 
Events.main</lang>
 
{{out}}
<pre>
1:39:30 => Program start
1:39:30 => Program sleeping
1:39:30 => Task start
1:39:31 => Program signalling event
1:39:31 => Task resumed</pre>
 
=={{header|Erlang}}==
Anonymous user