habrahabr.ru
Интересны методы защиты программ от бесконечных циклов, выхода за границы массивов, лишних отступов, ошибок других таких-же-умных-и-невнимательных. Ах да, еще нужен секрет счастья: как не перепутать set, list и tuple.
sys.version : '2.7.2 (default, Jan 3 2012, 04:15:49) \n[GCC 4.6.2]' sys.platform : 'linux2' * [test_couchdb4k] Decode 4KB sized CouchDB document with various data (100000 times) * [simpleubjson] 139.804502 (0.001398 per call) * [ json] 10.395652 (0.000104 per call) * [ ujson] 4.688209 (0.000047 per call) * [ simplejson] 152.967937 (0.001530 per call) * [simplejson_с] 7.520306 (0.000075 per call) Порван в ключья(: Хотя если выключить оптимизации у simplejson, то вроде и не все так плохо, но это синтетика. Придется запиливать сишный модуль на сканирование потока в поиске маркеров, иначе совсем не серьезно как-то.
/* а я дедлок - проц в потолок! */ function(doc){ while(row = getRow()){ emit(null, row); } }