Renamed keys for user-facing dicts, and application lambdas for user-hidden dicts sounds reasonable to me.
What about different lambdas affecting each other while they run? E.g. two client-side lambdas trying to solve the same conflict. Or also, since lambdas can potentially do *anything* in the json data, server-side lambdas may affect other concurrent lambdas that weren't even working on the very same conflict. Would a global conflict lock be used to prevent it, or is there any strategy to guarantee these issues won't happen? I'm assuming ditching json for a simpler format (just lists of lists), delegating dictionary implementation to each application, is either a dumb idea, or just another variant of same original problem (since I guess we would end up providing a dictionary emulation library using lists of (key,value) lists anyway, which applications may or may not use, so exactly like current situation with lists and dicts). -- Regards/Saludos, Bruno Gonzalez http://www.stenyak.com | stenyak @ irc://irc.freenode.net