Add tasks for all the new languages

This commit is contained in:
Tina Müller 2016-12-05 23:44:36 +01:00
parent 9dc3c2bb62
commit bba7bfd280
13208 changed files with 134745 additions and 0 deletions

View file

@ -0,0 +1,18 @@
(defun start ()
(spawn (lambda ()
(let ((`#(ok ,socket) (gen_tcp:listen 12321 `(#(packet line)))))
(echo-loop socket)))))
(defun echo-loop (socket)
(let* ((`#(ok ,conn) (gen_tcp:accept socket))
(handler (spawn (lambda () (handle conn)))))
(lfe_io:format "Got connection: ~p~n" (list conn))
(gen_tcp:controlling_process conn handler)
(echo-loop socket)))
(defun handle (conn)
(receive
(`#(tcp ,conn ,data)
(gen_tcp:send conn data))
(`#(tcp_closed ,conn)
(lfe_io:format "Connection closed: ~p~n" (list conn)))))

View file

@ -0,0 +1,18 @@
import asyncnet, asyncdispatch
proc processClient(client: AsyncSocket) {.async.} =
while true:
let line = await client.recvLine()
await client.send(line & "\c\L")
proc serve() {.async.} =
var server = newAsyncSocket()
server.bindAddr(Port(12321))
server.listen()
while true:
let client = await server.accept()
discard processClient(client)
discard serve()
runForever()