Писец (язык разметки)
Разработано | Брайан Рид , Scribe Systems |
---|---|
Тип формата | Язык разметки |
Распространено на | Техинфо |
Открытый формат ? | Да |
Scribe — это язык разметки и система обработки текста , в которой впервые использовалась описательная разметка . [1] [2] Scribe был революционным, когда он был предложен, потому что он впервые предполагал четкое разделение представления и содержания . [3] [4] [5]
История [ править ]
Начало [ править ]
Scribe был спроектирован и разработан Брайаном Ридом из Университета Карнеги-Меллон . Это стало темой его докторской диссертации 1980 года , за которую он получил Ассоциации вычислительной техники от премию Грейс Мюррей Хоппер в 1982 году. [1]
Рид представил документ, описывающий Scribe, на той же сессии конференции в 1981 году, на которой Чарльз Гольдфарб представил GML (разработанный в 1969 году). [6] непосредственный предшественник SGML .
продан Unilogic Писец
В 1979 году, в конце своей карьеры аспиранта, Рид продал Scribe расположенной в Питтсбурге компании-разработчику программного обеспечения под названием Unilogic (позже переименованной в Scribe Systems). [7] ), основанный Майклом Шамосом , еще одним ученым-компьютерщиком из Университета Карнеги-Меллон, для продвижения программы. Рид сказал, что он просто искал способ разгрузить программу для разработчиков, чтобы она не стала достоянием общественности.
Майкл Шамос был втянут в спор с администраторами Карнеги-Меллон по поводу прав интеллектуальной собственности на Scribe. Спор с администрацией был урегулирован во внесудебном порядке, и университет признал, что не имеет претензий к Scribe. [8]
Бомба замедленного действия [ править ]
Рид согласился добавить набор зависящих от времени функций (называемых « бомбы замедленного действия »), которые деактивируют свободно копируемые версии программы после истечения 90-дневного срока действия. Чтобы избежать деактивации, пользователи платили компании-разработчику программного обеспечения, которая затем выпустила код, который обезвредил внутреннюю функцию бомбы замедленного действия.
Ричард Столлман увидел в этом предательство идеала программиста . Вместо того, чтобы соблюдать идею «разделения и совместного использования», Рид предложил компаниям возможность заставить программистов платить за доступ к информации. [9]
Столлмана Texinfo «во многом основан на Scribe Брайана Рида и других языках форматирования того времени». [ нужна ссылка ] . [10]
Использование текстового процессора Scribe [ править ]
Использование Scribe включало двухэтапный процесс:
- Ввод файла рукописи в любом текстовом редакторе в соответствии с разметкой Scribe.
- Обработка этого файла с помощью компилятора Scribe для создания связанного файла документа, который можно распечатать.
Язык разметки Scribe определял слова, строки, страницы, интервалы, заголовки, подножки, сноски, нумерацию, оглавления и т. д. аналогично HTML . Компилятор Scribe использовал базу данных стилей (содержащую определения форматов документов), в которой определялись правила форматирования документа в определенном стиле.
Из-за разделения содержания (структуры) документа и его стиля (формата) авторам не нужно было беспокоиться о деталях форматирования. В этом есть сходство с LaTeX системой подготовки документов Лесли Лэмпорта .
Язык разметки [ править ]
Идея использования языка разметки, при котором метаинформация о документе и его форматировании содержалась внутри самого документа, впервые получила широкое распространение в программе под названием RUNOFF ; Scribe содержал первую надежную реализацию декларативного языка разметки. [11]
В Scribe разметка вводилась знаком @, за которым следовал либо блок Begin-End, либо прямой вызов токена:
@Heading(The Beginning) @Begin(Quotation) Let's start at the very beginning, a very good place to start @End(Quotation)
Также можно было передать параметры:
@MakeSection(tag=beginning, title="The Beginning")
Обычно большие документы состояли из глав, каждая из которых находилась в отдельном файле. Затем на эти файлы ссылался главный файл документа, тем самым объединяя многочисленные компоненты в один большой исходный документ. В главном файле обычно также определяются стили (например, шрифты и поля) и объявляются макросы, такие как MakeSection, показанный выше; макросы имели ограниченные программные возможности. На основе этого единого объединенного источника Scribe вычислил номера глав, номера страниц и перекрестные ссылки.
Эти процессы копируют функции более поздних языков разметки, таких как HTML . Размещение стилей в отдельном файле дало некоторые преимущества, такие как каскадные таблицы стилей , а запрограммированные макросы предвосхитили аспекты манипулирования документами в JavaScript .
Сопутствующее программное обеспечение [ править ]
Текстовый процессор FinalWord , имел язык разметки , от Mark of the Unicorn , который стал Borland от Sprint напоминающий упрощенную версию Scribe. До того, как они были упакованы в FinalWord, более ранние версии редактора и форматтера продавались отдельно как MINCE («MINCE Is Not Complete Emacs ») и Scribble соответственно.
LaTeX расширяет TeX идеями описательной разметки Scribe.
См. также [ править ]
Ссылки [ править ]
- ↑ Перейти обратно: Перейти обратно: а б «1982 – Брайан К. Рид» . Премия Грейс Мюррей Хоппер . Проверено 24 февраля 2009 г.
За его вклад в область компьютеризированного производства текста и систем набора текста, особенно Scribe, который представляет собой крупный прогресс в этой области. Он воплощает в себе несколько инноваций, основанных на исследованиях в области компьютерных наук в области разработки языков программирования, систем, основанных на знаниях, компьютерной обработке документов и типографике.
- ^ «Scribe(ID:2481/scr010) — язык форматирования текста» . Интернет-историческая энциклопедия языков программирования (hopl.info) . Проверено 24 февраля 2009 г.
Брайан Рид. Инновационный язык форматирования текста. Причина, по которой Рид получил медаль Хоппера в 1982 году.
- ^ «Конференция Markup Technologies '98. Программа и расписание» . xml.coverpages.org. Ноябрь 1998 года . Проверено 24 февраля 2009 г.
Работа Брайана Рида с системами разметки началась в 1970-х годах. Он самостоятельно изобрел и внедрил описательную разметку и разработал ее теорию. Его система Scribe, возможно, представляла собой самое четкое разделение структуры и формата, когда-либо созданное. Его диссертация по этому вопросу была завершена уже в 1981 году, когда он представил ее в Лозанне на той же сессии, где Чарльз Гольдфарб публично представил GML; SGML был предложен примерно год спустя.
- ^ «XML-связывание» . xml.indelv.com. Ноябрь 1998 года . Проверено 24 февраля 2009 г.
«Обобщенная», «универсальная» или «описательная» разметка обнаруживалась несколько раз, по-видимому, независимо. Scribe [Reid 1981] — ранний форматтер, основанный на структуре, а не на командах форматирования.
- ^ Брайан К. Рид, «Высокоуровневый подход к компьютерному форматированию документов», Труды POPL '80 Материалы 7-го симпозиума ACM SIGPLAN-SIGACT по принципам языков программирования, с. 24-31 дои : 10.1145/567446.567449
- ^ см. статью GML Wiki.
- ^ Пример оптимизации драйвера принтера PostScript , Adobe Systems, Техническая заметка № 5042, 31 марта 1992 г. Страница 5.
- ^ The Chronicle: 10 августа 2001 г.: 2 ученых сталкиваются в столкновении авторских прав
- ^ Уильямс, Сэм (март 2002 г.). «Свобода как свобода: крестовый поход Ричарда Столлмана за свободное программное обеспечение» . О'Рейли . Проверено 26 сентября 2008 г.
Для Рида сделка была беспроигрышной. Scribe не стал достоянием общественности, и Unilogic окупила свои инвестиции. Для Столлмана это было чистым и простым предательством идеала программиста. Вместо того, чтобы соблюдать концепцию совместного использования и совместного использования, Рид предложил компаниям возможность заставить программистов платить за доступ к информации.
- ^ ТексИнфо
- ^ Крокфорд, Дуглас (28 июня 2007 г.). «Писец» . Проверено 12 апреля 2010 г.
Внешние ссылки [ править ]
- Докторская диссертация Рида 1980 года «Scribe: язык спецификации документов и его компилятор» . (Примечание: по состоянию на апрель 2014 г. [update], пропустил последнюю страницу.)
- Автореферат диссертации.
- Основной доклад Брайана Рида на конференции Markup Technologies '98 в PowerPoint
- Причина, по которой Брайан Рид получил медаль Хоппера за Scribe в Онлайн-исторической энциклопедии языков программирования
- Писец, Вводное руководство пользователя, Брайан Рид, 1978 г.