In recent months Katie's Facebook team has completely replaced an in-house interpreted language, moving to a strong and statically typed Haskell DSL called Haxl. Dozens of Facebook developers have become functional programmers, using the open-source Haxl framework to battle spam at scale. This talk will explain how Haskell shines in this context, bust a few myths about the language, and highlight lessons Rubyists and Haskellers could learn from each other.
27. hasAssoc
::
Int
-‐>
Int
-‐>
Int
-‐>
Bool
hasAssoc
id
assoc
target
=
...
28. hasAssoc
::
Int
-‐>
Int
-‐>
Int
-‐>
Bool
hasAssoc
id
assoc
target
=
...
newtype
Id
=
Id
Int
newtype
AssocId
=
AssocId
Int
29. hasAssoc
::
Int
-‐>
Int
-‐>
Int
-‐>
Bool
hasAssoc
id
assoc
target
=
...
newtype
Id
=
Id
Int
newtype
AssocId
=
AssocId
Int
hasAssoc
::
Id
-‐>
AssocId
-‐>
Id
-‐>
Bool
hasAssoc
id
assoc
target
=
...
44. Haxl team
past and present
Louis Brandy
Jonathan Coens
Andrew Farmer
Kubo Kováč
Jake Lengyel
Simon Marlow
Katie Miller
Bartosz Nitka
Jon Purdy
Aaron Roth
Zejun Wu
Noam Zilberstein
45. More about Haxl
Haxl on GitHub
'Fighting spam with Haskell' blog post
'There is no Fork' ICFP paper and presentation
'The Road to Running Haskell at Facebook Scale'
presentation
Wired article
46. The End
by Katie Miller (@codemiller)
Software Engineer at Facebook