• BL вещества mind-defecate Картинка. На картинке:
    1. Немного LaTeXа.
    2. Формула из статьи Лампорта "How to Write a Long Formula". Лампорт считает что очень большие формулы с таким оформлением намного проще читать.
    3. Кусок кода из Кнутовского The Stanford GraphBase и результат его форматирования.

Replies (15)

  • @Avatar, Вообще это просто иллюстрация к мысли о наглядности представления данных. Очевидно, что при использовании текстовой логической разметки работать над текстом намного удобнее, чем в случае с WYSIWYG редакторами.

    Аналогичная фигня с кодом: haskell читать гораздо удобнее когда используются красивые символы вроде '∘', '→', 'λ', вместо '.', '->', '\'. А использование всех этих красивых символов при редактировании кода невозможно, потому что их неудобно вводить с клавиатуры (про вариант с использованием автозамены — знаю).

    Отсюда возникает мысль разделения формата для редактирования и формата для чтения. Мысль возможно и идиотская, но мне кажется заманчивой.
  • @Kim, Ну. AucTeX это уж явно не пример удобной работы с текстом (%
  • @Kim, Что за магия применена во втором примере для такого форматирования? Оно как-то противоречит тому, что я ожидал бы от латеха. Например, скобочки [] и {}.
  • @Kim, И еще, откуда в сишном коде взялся мусор в виде "@+"?
  • @borman, Там применено ручное форматирование. Это лишь пример того как можно переписывать формулу для увеличения наглядности. Такая задача легко автоматизируется.
  • @borman, Из cweb.
  • @Kim, ручное форматированиеА поподробнее если, это как вообще?
  • @Kim, Специальная команда которая не даёт автоматическому форматтеру поставить перевод строки между двумя указанными командами.
  • @borman, Подробнее можешь тут посмотреть research.microsoft.com
    Там предложения по оформлению очень больших формул. Скобочки заменить на отступы, инфиксные операторы превратить в префиксные — всё для того чтобы формулу было проще читать, не узнавая к 20 строке, что ты оказывается читал первый коньюнкт.
  • @Kim, А, черт, меня обмануло названии статьи. Я думал, там про то, как злобные формулы в техе писать, а оно про общий случай.
  • @Kim, про вариант с использованием автозамены — знаюа чем не нравится?
    ну и то, что показано про код, выглядит примерно как подсветка синтаксиса и т.п.
  • @anton0xf, не нравится тем, что в куче шрифтов нет огромного количества юникодных символов. Тем, что при введении новых сущностей — тебе придётся давать им два имени, а не одно имя и представление. Тем, что в случае опечатки тебе придётся сносить весь автозамененный символ и писать имя метода/оператора заново. И ко всему этому живые языки программирования практически не поддерживают замену ASCII символов на юникодные, так что придётся делать ещё препроцессор делающий обратную автозамену.

    выглядит примерно как подсветка синтаксиса и т.п.
    Как подсветка синтаксиса, оптимизация представления всех строк и логических операторов, переформатирование кода к единому стилю для чтения. Плюс явное указание списка мест, где использовался тот или иной идентификатор. И, конечно же, в представление можно дописать всё что тебе угодно. Хотя бы и возможность вставлять блоксхемы в комментарии.
  • @Kim, 1. есть такая проблема
    2. вот теперь мысль раскрыта:)
  • @Kim, во втором примере написано \cap а стоит \cup