Odpovídáte na názor ke článku Bezpečné programování v C++ II.
[8] [10] Plus existuje moznost, ze pro nejakou tridu T existuje "divoka" specializace std::list (proto je asi lepsi predpokladat o std::list, ze kazda je well-behaved a resit jenom filter()).
Pro model checking existuje spousta nastroju a logik, jenze a) je to (casove) narocny b) overi to urcite vlastnosti a o jinych to nic nerekne. Proto treba existuji dokazatelne bezpecne algoritmy (za danych predpokladu), ktere je mozne naborit side-channel utokem (timing attack etc.).
Zdanlive nesouvisejici vec: dokumentace. Podle ni se da celkem dobre odhadnout kvalita kodu/frameworku. Pokud nevite, kdo ktery objekt vlastni (manual cleanup/auto_ptr/shared_ptr), kto ma jen weak pointer, jake predpoklady ma metoda o parametrech, pak prinejlepsim vzniknou memory leaky, v horsim pripade "mrtvy" objekt muze delat co chce.
Jinak chvalim temu (mne by se to psat nechtelo protoze vim jak je to slozity ;-)), ale vic bych se soustredil na navrhove vzory nez na dokazovani.
BTW nekdo v minulem dile uvedl boost::lambda - pekna vec, dokud nepotrebujete volat nejakou metodu/funkci (jinak boost::lambda::bind() polovinu elegance a citelnosti ubere). Lambda funkce v C0x budou super ale chvili to potrva...