analizer
11.01.2012 23:48 mcabber
всё таки для написания документации literate programming просто незаменим. вот,
например, берём:
https://raw.github.com/analizer/backtrac...
делаем:
noweave -delay README.nw>readme.tex
и получаем документацию (пусть и на крайне корявом английском).
а теперь делаем:
notangle -Ruse-backtrace.c README.nw>use-backtrace.c
и получаем программу, запуск которой убеждает нас в том, что документация всё
ещё актуальна.
Почему не выбрать прекрасный http://sphinx.pocoo.org ? Это какие-то крайности :-(
чем оно лучше noweb?
вообще я еще не догнал про literate programming. типа ты пишешь доку, из неё прототип генерируешь (прямо код), его имплементишь, ок. а как доку поддерживаешь? оно умеет обновляться как-то (понимать, что метод переименован или семантику чекать)?
из доки генерируется не прототип, а весь код целиком. правишь не код, а доку. в результате дока всегда актуальна. на самом деле это идеализация. но вот для написания документации и проверки её актуальности очень годно