I've noticed that the NUL-termination problem [1] has come up a number of times in these comments. If you want a solution to this that isn't so drastic as an object system, perhaps take a look at Usul [2], non-POSIX 'tabular' Unix utilities which use an AWK-style $RS.
[1]: http://news.ycombinator.com/item?id=4369699
[2]: http://lubutu.com/soso/usul