Carry On! … Continuation over binding pipelines for functional web


Async Wrapping (of sync)



Tail Call Optimisation

Replicated branch (if/else) assessment

An (initial) alternate continuation format

Reinventing the wheel…

Some -> Next

So still binding options?

Short-circuit both ways!

For your consideration…

  • Avoid having to wrap sync results in expensive async on every handler
  • Tail Call Optimised to minimise stack pressure
  • No logic branch duplication (if/else, create option object/match)
  • Type pattern mostly unchanged, just adding next continuation parameter on HttpHander to be used instead of Some option ctor



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store


I like maths, physics, finance, software engineering and long walks on the beach.