Async
In week 12, I said files are annoying, specifically that a network can go down, or a drive can have problems, and for one reason or another, you'll be stuck blocking. There aren't enough async functions. My conclusion was that I'll need to create an IO thread and do operations there. This week, I wrote up a few functions like load file, read directory, and a lockless work queue. I put IO jobs onto the queue, and when the operation is done (success or fail), it'll send me the results by using a callback. The code is written for mac and linux. I don't think I'll try to get anything running on windows until after the next beta.