В ней нет ссылок. Математические фонты в браузерах (Firefox, Opera) у меня не показывают красиво кривую вашу "h" и "h*" (есть, но плохо читается) Возможно, что картинки mimeTeX (вместо AWCIMathML.js) были бы красивее.
также я не форматировал "justification". Перевод сделал наполовину конвертером, затем поправил руками.
P.S. разумеется я проверил и код, который Molly.pl tangles out из переразмеченного (из TeX'а в HTML) исходника, разница с noweb в одном символе, пробеле перед закрывающей скобкой. Она там должна быть по тому алгоритму, который у меня считает отступы.
Так что сравнивайте:
(а) какой формат удобнее читать, когда работаешь над файлом. Я НЕ читаю исходник в редакторе (vim), я читаю его в веб браузере, а пишу в редакторе ссылаясь на номера строчек. Мне необходимость плавать в noweb-исходнике кажется серьезно тормозящей возможность работать над большими файлами
(б) какой формат дает более чистый печатный документ (разумеется, TeX)
(в) в каком формате чего не хватает (я не делал, например, ничего для автоматизации ссылок или нумерации уравнений)
Я думаю, что перевод TeX-а в html - это отдельная большая задача, для решения которой есть несколько отдельных пакетов (TeX4ht, latex2html, HeVEA), которые не лишены недостатков. Я собираюсь написать, как можно использовать latex2html с noweb. Ваше решение хорошее и легкое, а TeX нужен далеко не всем.
А как вы пишете? Одновременно держите на экране браузер и vim, читаете одну половину экрана, а пишете на другой?
А не уж-то на лиспе (или я обознался? :-) ) приятно программу писать? У меня был опыт на первом курсе - замучался... :-) Хотя когда сдал, попробовал что-то для себя. Вроде легче было :-)
Это диалект Lisp-а Scheme. Мне он нравится тем, что он очень простой (в минимальном варианте), поэтому есть даже на моём старинном КПК. Кроме того, так как он очень простой, то в нём нет каких-то непонятных косяков, вроде особенности списков Maple, которые на самом деле являются массивами и поэтому жестоко тормозят при добавлении в них элементов. На Lisp (особенно Common Lisp и Emacs Lisp :)) очень приятно писать в emacs, он тогда превращается в очень продвинутую IDE для этих языков.
Насколько я понимаю, да. В документации к noweb сказано следующее: Documentation chunks begin with a line that starts with an at sign (@) followed by a space or newline. They have no names. Code chunks begin with <>= on a line by itself. ... If the first line in the file does not mark the beginning of a chunk, it is assumed to be the first line of a documentation chunk.
А как соотносится литературное программирование с итеративным процессом программирования при котором дописывание кода происходит после компиляции, потом снова дописывания, потом опять компиляции, и число функционала программы всегда растет, при том, что начиналась программа с исходника Хэлло ворлд? Ведь если исходник WEB-документа парсится в два файла - исходник проги и хэлп-файл, то обратно их собрать уже нельзя??? Скажем, внеся изменения в исходник проги. Тогда литературное программирование вообще не вписывается в современность.
Можно ли интегрировать в Дельфи литературное программирование?
Кнут ведь писал свою первую прогу на бумаге, а потом ее вводил в комп.
Я вам ответил. Действительно, последнее время я не писал литературных программ, однако сейчас возвращаюсь к тому, что было сделано одновременно с написанием этого поста и я вижу определенную пользу литературного подхода :)
Ну так надо смотреть на литературную программу как на исходник, а то, что получается в результате выполнения WEB(cWEB,noweb,etc) не трогать. Точно так же, как при разработке на C/C++ никто не пытается редактировать объектные файлы (.o).
Соответственно, запуск web/noweb надо добавить в make-файл перед вызовом компилятора.
Про современное состояние Delphi я ничего не знаю, но там вроде можно настроить сборку при помощи make-файлов. Другое дело, что файлы с формочками окажутся отдельно от литературной программы.
Comments 28
http://github.com/unixtechie/Literate-Molly/tree/26aabce8b68536e9aab4a920667f1fcb835f00e6/examples
В ней нет ссылок. Математические фонты в браузерах (Firefox, Opera) у меня не показывают красиво кривую вашу "h" и "h*" (есть, но плохо читается)
Возможно, что картинки mimeTeX (вместо AWCIMathML.js) были бы красивее.
также я не форматировал "justification".
Перевод сделал наполовину конвертером, затем поправил руками.
Reply
Она там должна быть по тому алгоритму, который у меня считает отступы.
Так что сравнивайте:
(а) какой формат удобнее читать, когда работаешь над файлом. Я НЕ читаю исходник в редакторе (vim), я читаю его в веб браузере, а пишу в редакторе ссылаясь на номера строчек.
Мне необходимость плавать в noweb-исходнике кажется серьезно тормозящей возможность работать над большими файлами
(б) какой формат дает более чистый печатный документ (разумеется, TeX)
(в) в каком формате чего не хватает (я не делал, например, ничего для автоматизации ссылок или нумерации уравнений)
И так далее.
Reply
Ваше решение хорошее и легкое, а TeX нужен далеко не всем.
А как вы пишете?
Одновременно держите на экране браузер и vim, читаете одну половину экрана, а пишете на другой?
Reply
Reply
А не уж-то на лиспе (или я обознался? :-) ) приятно программу писать? У меня был опыт на первом курсе - замучался... :-)
Хотя когда сдал, попробовал что-то для себя. Вроде легче было :-)
Reply
Мне он нравится тем, что он очень простой (в минимальном варианте), поэтому есть даже на моём старинном КПК.
Кроме того, так как он очень простой, то в нём нет каких-то непонятных косяков, вроде особенности списков Maple, которые на самом деле являются массивами и поэтому жестоко тормозят при добавлении в них элементов.
На Lisp (особенно Common Lisp и Emacs Lisp :)) очень приятно писать в emacs, он тогда превращается в очень продвинутую IDE для этих языков.
Reply
Reply
Я сегодня уже часть написал :)
Reply
<>=
код
@
вставлены в текст. В Sweave первая @ необязательна что ли?
Reply
Reply
В документации к noweb сказано следующее:
Documentation chunks begin with a line that starts with an
at sign (@) followed by a space or newline. They have no
names. Code chunks begin with
<>=
on a line by itself.
...
If the first
line in the file does not mark the beginning of a chunk, it
is assumed to be the first line of a documentation chunk.
Reply
Можно ли интегрировать в Дельфи литературное программирование?
Кнут ведь писал свою первую прогу на бумаге, а потом ее вводил в комп.
Reply
Reply
Reply
Соответственно, запуск web/noweb надо добавить в make-файл перед вызовом компилятора.
Про современное состояние Delphi я ничего не знаю, но там вроде можно настроить сборку при помощи make-файлов. Другое дело, что файлы с формочками окажутся отдельно от литературной программы.
Reply
Leave a comment