Really amazing tool. Have worked with it barely one day and I'm already wondering how I could have ever lived without it.
Any chance we could get support for additional channel formats? For example, I'm currently working with OpenGL textures stored as ABGR. It would be awesome if you could add some more permutations there. Or maybe even a generic mechanism for mapping color channels? After all, as inhabitants of the C++ land we are not afraid of bitmasks.
Great series so far, I like it very much. Greg really has a way of making this stuff enjoyable and I hope there will be more Monty Python references in the future talks.
I have a question on the intuition behind the 'redeem'-rule: The way I understand it, an IOU(A) can be understood as a 'promise' for an A. We do not know if we can keep this promise, so it's treated as not(A) by default. Now what the redeem rule says is, that if I can wrap a A inside IOU, I can do the same thing with IOU(A), creating IOU(IOU(A)) in the process. What I don't understand is how it is enforced that I can only redeem this IOU(IOU(A)) if I have an A? In the end, a plain IOU(A) is practically worth nothing. Since there is no Gold-Standard to back it up, it does not make sense that I am able to redeem it for an A just like that, does it?
I'd be glad if you could elaborate on that a little more.