Socket API based on the box library, with websockets and TCP support.
:set -XOverloadedStrings
import Box
import Box.Socket.Types
import Box.Websocket
IO client:
clientBox defaultSocketConfig (CloseAfter 0) (stdBox "q")
IO server:
serverBox defaultSocketConfig (CloseAfter 0) (stdBox "q")
See examples in Box.Websocket.Example and Box.TCP.Example for a variety of usage.
-
The API attempts to be similar for TCP and Websocket
-
A Codensity, continuation passing style is encouraged, similar to the box library.