Британские учёные,
конкретно Michael Norrish. C formalised in HOL. University of Cambridge Computer Laboratory, 1998.
https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-453.pdf
HOL = Higher order logic (https://en.wikipedia.org/wiki/HOL_(proof_assistant))
20 лет как разрабатывают программы с доказуемыми характеристиками.
А в Кумире про такое и не слышали! (пруфлинк: http://ya.ru/?q=кумир+матлогика+pdf)
Это позволяет верифицированным программам (в частности seL4) гарантированно избежать:
переполнений буферов,
разыменовывания нулевого указателя,
утечек памяти и
выполнения неопределённого кода.
Тем временем в России утечки памяти ловят голыми руками.
За 20 лет, они ещё там дальше вперёд ушли, формализовывают не только ядра ОС, но и
компиляторы (CompCert):
http://gallium.inria.fr/~xleroy/publi/compcert-CACM.pdf
код файловых систем:
http://ssrg.nicta.com.au/publications/p … _RM_12.pdf
и СУБД:
http://ynot.cs.harvard.edu/papers/popl10.pdf
Нужно больше скелетов! http://e-collection.library.ethz.ch/ese … 601-02.pdf
Отредактировано ВежливыйЛис (23.07.2016 07:53:38)