Inception
I came to remind you of what you once knew
Bar Ziony was asking about using type erasure to create a property that can contain any possible adopter of a protocol, but without using generics. I posted a gist but wanted to go over it in more detail, plus answer some follow-up questions.
Prerequisites
We'll start with a protocol and two types that adopt the . . .
Apple File System
Ding
Update
Ars has some updated information, including details about the snapshotUtil apfs_snapshot utility.
Original
The Apple File System is still a slightly mysterious beast. Apple has reason to be cautious: A new file system is always a huge undertaking and the risks couldn't be higher: a serious bug can cause . . .
Xcode Extensions
A brave new world
Xcode 8 now supports an official extension API. The first extension type supported is the Source Editor extension (though probably not the last). The flip-side is that Xcode 8 adopts System Integrity Protection. That means it is no longer possible to inject code into the Xcode process. Alcatraz is closed for business.
Basics of . . .
Packing Bytes in Swift
It's Unsafe Pointers All The Way Down
Today I want to do a small exercise in packing some Float32
s into a SQLite Binary Large Object (BLOB) column. Sure I could use JSON, protobuf, or some other encoding. Yes I could also use NSNumber
, NSArray
, and NSCoder
or plists.
Instead I want to do this purely in Swift and mostly analogous to what you'd do in C because . . .
Swift: Why Associated Types?
It's rabbit holes all the way down
Associated Types Series
In my last article I gave an incorrect explanation for why Swift has associated types. It was half-correct in that specific knowledge of the types gives the compiler the ability to optimize but . . .
Swift Associated Types, cont.
Sure, let's go down this rabbit hole again
Update: I originally hit publish too soon; this is the updated article.
I don't feel like I fully covered one aspect of protocols with associated types: why can they be such a pain to work with?
Why Associated Types
This rabbit hole just keeps on going; see my third article in the Associated Types series for a . . .
Functors, Applicatives, and Monads in Plain English
This is a no-bullshit zone
Let's learn what Monads, Applicatives, and Functors are, only instead of relying on obscure functional vocabulary or category theory we'll just, you know, use plain english instead.
Functors
Functors are containers you can call map
on. That's it. Seriously.
A million words of category theory and Haskell . . .