Skip to content

Instantly share code, notes, and snippets.

@sgtz
sgtz / typeInferenceBug.fsx
Created October 9, 2014 12:39
Possible F# Type Inference Bug In Workaround Form
// NB. to reproduce bug, delete the type after the colon
module AST =
type name = string
type param = string
type arg = Number of int | Arg of param
type Part =
| Cell of string
Title : Learn you to tame complex APIs with F# powered DSLs*
Abstract :
The emergence of Cloud platforms has fundamentally changed the IT landscape, to the extent that it is now
unthinkable for a technology-based startup not to operate on the cloud. However, attempting to ride on this ever-expanding platform ecosystem wave has created a new set of challenges.
Join Yan Cui in this talk as he draws on his extensive experience with AWS over the last 5
years to illustrate, with real-world use cases, how the backend team at Gamesys Social is using F# to
build internal and external DSLs to successfully navigate AWS service complexity.
namespace WebSocket
// Appache 2.0 license
// References:
// [1] Proposed WebSockets Spec December 2011 http://tools.ietf.org/html/rfc6455
// [2] John McCutchan (Google Dart Team Member) http://www.altdevblogaday.com/2012/01/23/writing-your-own-websocket-server/
// [3] A pretty good Python implemenation by mrrrgn https://github.com/mrrrgn/websocket-data-frame-encoder-decoder/blob/master/frame.py
// [4] WebSockets Organising body http://www.websocket.org/echo.html
// [5] AndrewNewcomb's Gist (starting point) https://gist.github.com/AndrewNewcomb/711664