[docs] Re: Literate programming for Makefiles
Vitaly Ostanin
vyt на vzljot.ru
Ср Ноя 5 17:12:33 MSK 2003
On Tue, 4 Nov 2003 20:24:54 +0300
"Oleg A. Paraschenko" <olpa на xmlhack.ru> wrote:
> Привет!
>
> On Tue, 4 Nov 2003 17:56:35 +0300
> Vitaly Ostanin <vyt на vzljot.ru> wrote:
>
> ...
> >
> > Время потрачено для приведения Makefiles к схеме сборки по
> > зависимостям. В том, что в процессе приведения встал вопрос
> > документирования, нет ничего удивительного.
> >
> > Кстати, время, потраченное лично мною на создание
> > Makefiles.litprog съэкономит (кстати, как это слово правильно
> > пишется?) лично мне время на описание Makefiles в docs-howto.
> >
> > А кому-то, возможно, сократит время ковыряния в потрохах
> > Makefiles.
>
> Да, но это относится к любой документации. Пояснения с
> помощью обычных #-комментариев ничем не хуже.
Хуже - всем тем, чем plain text хуже XML. И соответственно лучше.
Для документирования XML предпочтительнее комментариев.
<skipped/>
> > > > Кстати, подразумевается, что автор Makefile для DocBook
> > > > имеет представление о DocBook хотя бы в пределах <para/>.
> > >
> > > Вот это как раз хуже всего. Потому что незнакомый с
> > > DocBook человек будет писать <para/> и не мучиться, а
> > > знакомый -- начнёт задумываться, а есть ли
> > > <alt:make-target/>,<alt:make-variable/> и т.д, а кому-то
> > > это захочется сделать.
> >
> > Кому захочется - вправе задуматься :) Чем это плохо?
>
> Начнётся работа над этим.
Пусть начнётся, каждый сходит с ума по своему :)
> > Серьёзно, чем litprog плох?
>
> > Мешает?
>
> Да.
Конкретнее - только необходимостью предварительной сборки
Makefiles? Это перевешивается качеством документирования и
редкостью их обновления.
> > Сложен?
>
> Нет. В данном случае -- многословен.
Это не критично.
> > Ну так пишите
> > простые Makefile - но их описания должны быть в любом случае,
> > и они будут вставлены в документацию.
>
> Во, ещё придумал:
>
> * Я люблю делать завершённые вещи. #-Комментарии внутри make --
> завершённые вещи. LP-комментарии -- нет.
Хорошо, собери все комментарии в удобоваримом виде и вставь в
описание работы наших Makefiles. На XML это тривиально.
> Их надо
> "компилировать". А если при этом make-файл ещё невалиден и
> ничего не собирается?
Исправить. В компилировании нет ничего нового.
> * успех php, perl и других basic'ов в том, что как написал --
> так сразу и проверил. В варианте с LP надо вначале
> "компилировать".
Для кода. В варианте без LP тоже придётся компилировать - для
док.
Лучше не ударяться в дебри обсуждений "компилируемые языки vs
интерпретируемые" :)
<skipped/>
> > > Вот-вот. А надо наоборот. Вначале надо написать для
> > > человека, что происходит, затем ввести код,
> > > скомпилировать, и только тогда начать отлаживать код.
> >
> > Можно и так - дело вкуса. На практике программист не всегда
> > сразу может сформулировать, что происходит :)
>
> Одна из целей LP и состоит в том, чтобы программист вначале
> всё-таки сформулировал, а только потом писал.
Не совсем. Программист должен писать на человеческом языке,
описать логику, и рядом эту логику закодировать в программу.
Жёсткий порядок здесь нереален - и письма пишутся,
перечитываются, потом исправляются и отсылаются.
Короче, это не предмет для обсуждения - каждый пишет, как ему
удобнее, лишь бы результат был качественным.
<skipped/>
> > Makefile не так уж часто будут меняться. А вот для понимания
> > процесса сборки нормальная дока по ним была бы нелишней.
>
> Для понимания процесса нужна внешняя по отношению к самим
> make-файлам дока. LP тут ничем не поможет.
Будет, согласен, и уже про это писал. Насчёт LP у меня другое
мнение.
> > > > А вот 1. был бы удобен, но не представляю его на
> > > > практике.
> > > >
> > > > > ...
> > > > > # non-doc comment
> > > > > ## <para>... comment for docs ...</para>
> > > >
> > > > А как отсюда выдирать теги?
> > >
> > > Примерно так (не проверил):
> > >
> > > echo '<makedoc>'
> > > cat Makefile | grep '^##' | sed '/s/^## /'
> > > echo '</makedoc>'
> >
> > Такая схема ещё больше усложнит подсветку синтаксиса
> > одновременно для DocBook и Makefile.
>
> Неа. В этом случае можно спокойно оставаться в подсветке для
> make. Ибо добавить <para/> в комментарии -- не проблема. А
> вот в супе из тегов в XML LP без подсветки можно утонуть.
Можно, можно и не тонуть. Подстветка синтаксиса здесь вообще
offtopic - повторяю, можно забыть про LP и им не пользоваться,
никто не заставляет.
Если в конце концов окажется, что он в Makefiles никому не нужен,
то он уже нужен мне для docs-howto и мне не трудно его
поддерживать во всех Makefiles.
<skipped/>
--
Regards, Vyt
mailto: vyt на vzljot.ru
JID: vyt на vzljot.ru
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 189 байтов
Описание: отсутствует
Url : /pipermail/docs/attachments/20031105/585beb9c/attachment.bin
Подробная информация о списке рассылки docs