I'm trying to implement an actor model of concurrency in Objective-C, because I want to avoid the infamous problems of shared mutable state, locks, semaphores, etc. It can be done, but it takes real discipline to avoid accidentally using shared state.
One way to enforce the shared-nothing rule is to use separate processes instead of separate threads, but I think that's overkill and will have a nasty overhead. What I'd really like is something that achieves the same end, but in a more light-weight fashion. Is there anything that fits this description?