1. 6

  2. 3

    Pretty cool, always nice when companies share stuff like this.

    I’ve been wanting to write a library like Lamson for Haskell for awhile now. Partly because I think it’d be useful, partly because I like the way in which email is asynchronous and distributed by nature. There are SMTP libraries but nothing that lets you structure routing, handle resilience, etc. in a principled and well-designed manner.

    1. 2

      We selected SMTP as our transport mechanism because it allows us the luxury of inserting a layer in our infrastructure to handle queueing and resilience of mail transport before handing messages across to the ESP.

      Curious why this isn’t possible with HTTP ?

      1. 4

        I suppose it’s possible with HTTP, but we get it essentially for free with SMTP. While HTTP will queue requests to a certain degree, I’m not aware of any built-in functionality within the HTTP protocol that provides backoff/retry on failure.

        1. 1

          Ah. I didn’t realize SMTP offered this as part of the protocol.