For a data recovery program I need to be able to extract the values+types from files written by NSArchiver, without having access to Apple\'s CF / NS frameworks.
The OS
Frank Illenberger wrote a NSUnarchiver replacement called MEUnarchiver
based on the 1999's typedstream.m source code: https://github.com/depth42/MEUnarchiver
It has been extended to support newer types that are not known to the original source code. It still relies on the ObjC runtime to provide NSCoding decoder implementations for all the standard types such as NSString etc, but otherwise it is pretty self-contained and allows me to prevent crashes that occur with Apple's NSUnarchiver code when passing damaged data.