TLS/SSL implementation in Haskell
While Haskell mitigates or eliminates some classes of bugs common in C (such as buffer overflow), it also makes it more difficult to guard against side-channel attacks like timing attacks[0], because lazy evaluation makes it more difficult to reason about the actual behavior of the code at runtime.<p>This isn't a dig at either Haskell or C; the point is that all programming languages and environments have their "gotcha!" moments.<p>[0] <a href="https://en.wikipedia.org/wiki/Timing_attack" rel="nofollow">https://en.wikipedia.org/wiki/Timing_attack</a>