In a previous post, I mentioned Beanstalk, a simple and fast work queue. It uses a simple and straightforward protocol, and learning to implement it in Swift has proven to be extremely fun.
In a previous post, I mentioned Beanstalk, a simple and fast work queue. It uses a simple and straightforward protocol, and learning to implement it in Swift has proven to be extremely fun.
I recently started a tiny side project that implements the Beanstalk protocol. If you’ve never heard of beanstalkd
, it’s a work queue that’s really convenient for simple projects: you post jobs to queues and those jobs are picked up and handled by workers. Each job that you post to a queue has a priority that goes from 0 (urgent) to 4,294,967,295 (not so much). In Swift, this can be represented with a UInt32
, but let’s see how we can use Tagged
to make it safer and more expressive, starting with an example from a real-world codebase.
It has been three and a half year that I get the occasional notification from GitHub, about someone asking Facebook to add Swift Support to Infer. They grow up so fast!
In a previous blog post, we covered how to define a custom editor to write your commit messages in. The example was deliberately simple and static, but we covered that an editor could be practically anything. Why not create our own editor in Swift then?