Русскоязычное программирование

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Русскоязычное программирование » обработка текста » Текст "как плоскость".


Текст "как плоскость".

Сообщений 1 страница 15 из 15

1

Модели текста могут быть разными (особенно другая модель текста у OpenOffice). И если раньше текст был цепочкой символов (длинной строкой), то теперь он плоскость (с отступами от края).

Как это отразилось в теории компиляции? Может ли кто-нибудь сослаться на какие-нибудь документы?

0

2

Лис написал(а):

если раньше текст был цепочкой символов (длинной строкой), то теперь он плоскость (с отступами от края).

Плоскостью стал он уже очень давно, благодаря появлению символа "новой строки" и стало возможным представлять текст как "плоскость". Разумеется одномерной цепочкой он при этом быть не перестал и думаю не перестанет ею быть никогда.

Лис написал(а):

Как это отразилось в теории компиляции?

Это отразилось в способе указания на конкретную позицию в тексте, вместо смещения в символах от начала текста стали указывать номер строки и смещение от ее начала.

0

3

Есть концепция "модель"-"вид". Цепочка - это модель, а то что координаты у символов есть, то это "видимость", их всегда можно пересчитать имея позицию в цепочке.
Ну будем хранить дополнительно к позиции в символах пару <строка, столбец>. С точки зрения компиляции ничего же не поменяется - там как цепочка обрабатывалась, так и продолжит.

Вот если бы автоматы заменить с последовательных на "клеточные", как в игре "жизнь" (чтобы они при компиляции учитывали символы не только "до" и "после", но и "сверху"/"снизу" и "по-диагонали"), тогда разница была бы существенной.

И если уж текст это плоскость, то глиф - это фрагмент плоскости, и связи с другими символами (например "по направлению письма").  Тогда надо будет тексты программ готовить в .pdf или в .svg, и там можно будет писать под наклоном, например по диагонали листа.

Обобщённый парсер должен тогда не с цепочкой работать, с планарным графом.

Идея, вообще фанатская, например элементы синтаксиса "обвести замкнутой линией", "соединить стрелкой", я уж молчу про "подчеркнуть", "добавить ударение".

Отредактировано Лис (2018-05-06 21:16:10)

0

4

Плоскостью стал он уже очень давно, благодаря появлению символа "новой строки" и стало возможным представлять текст как "плоскость".

Не очень уж и давно.
Классика сканера:
1. Открыть файловый поток
2. Читать буфер цепочку символов (не строку, а фиксированное число байт!) - ну например 80 байт (а просто потому что ширина экрана была стандартно не более 80 символов).
3. Парсить до точки с запятой
4. Сдвинуть указатель в файле
5. См. пункт 2.
6. ПРОФИТ
Так это работало - откройте исходники и поковыряйтесь сами.

Как это отразилось в теории компиляции?

Да практически никак. Это же практика, а не теория.

Отредактировано utkin (2018-05-07 12:30:49)

0

5

Лис написал(а):

И если раньше текст был цепочкой символов (длинной строкой), то теперь он плоскость (с отступами от края).

Никогда не был, с самого первого языка - ассемблера, пошла и сохранилась кривая реализация, убивающая время и носители данных.
Отступы и концы строк отдельными знаками - это подход уровня, например, римских чисел, времена ранней античности. Но кого это удивит, программеры и финикийской рунописью не брезгуют)

А "плоскость" давно изобретена и успешно применяется - это Excel.

Отредактировано MihalNik (2018-05-07 11:50:33)

0

6

MihalNik написал(а):

программеры и финикийской рунописью

https://slav-gramota.livejournal.com/5753.html

... Как вы заметили, в финикийском письме нету буквы "В". Отсюда можно сделать смелый вывод, что очень многое, ныне читаемое через букву "Ф" на самом деле должно читаться как "В". К примеру, финикийцы сами получаются "виникийцами", видимо, от слова "вино". Ну а фрукты-финики, соответственно, "виниками", от того же слова. Кроме того, название самой той местности, Палестина, которое произошло от слова "фелестимяне", тоже должно читаться через букву "В", как "Велестина". То есть виникийцы-велестимяне буквально получаются адептами культа винодела Бахуса, он же Ваал-Велес. Но эту тему мы...

0

7

Никогда не был, с самого первого языка

Речь не о том, как его показывают юзеру, а о том как он сканируется в трансляторах. А в ранних трансляторах он линия (список, массив, вектор и т.д.).

0

8

utkin написал(а):

Речь не о том, как его показывают юзеру, а о том как он сканируется в трансляторах. А в ранних трансляторах он линия (список, массив, вектор и т.д.).

Оно и сейчас в основном не сильно лучше.

0

9

utkin написал(а):

(список, массив, вектор и т.д.).

- Когда вы упомянули о фракталах - мне очень даже понравилось, поскольку они и есть та "суть", та соломинка, на которую и придётся опираться впоследствии...
- Да, "список, массив, вектор, параграф, пункт, абзац"... Тот же "Notepad++" берём, вглядываемся, - ах, как он красиво "сплюскивает" те "блоки", которые временно мешают. (стоит лишь минус на полях нажать)
- Ах, сколько много появилось редакторов текста, делающих то же самое, но не признающихся в желании сделать инфу более блочно-коробочной, потому и более удобочитаемой, а впоследствии и 2D и 3D-срендеренной, а там и "сфракталенной"... Уже давно многие пытаются идти к смешиванию текста и графики и лишь единицы "упорнейших" чисто-текстовиков - делают вид, что они против графики.
- Почему? - Да потому, что в этом случае очень много инфы перестанет быть "международной, но на англоязычный манер", - потому, что "почта, телеграф, телефон", о которых столь часто упоминал наш "картавый вождь" - выйдут из-под контроля "английских колонизаторов-глобализаторов"...

0

10

Сандро
CLI - это универсальное представление, отображения древовидных данных с возможностью их редактирования. В наличие диалоговая система с обратной связью. А в паре с автоматизацией получилась довольно устойчивая вещь.

Сандро написал(а):

Почему? - Да потому, что в этом случае очень много инфы перестанет быть

Дело не в этом, а в удобстве.

Сандро написал(а):

2D и 3D-срендеренной, а там и "сфракталенной"

Вот это всем известно но неудобно. А удобство возникает во всплывающем меню с быстрым набором действий - событийной ориентируемым, наполняемым в зависимости от контекста и предпочтений пользователя.
А так же в шаблонах форм.

0

11

Павиа написал(а):

Дело не в этом, а в удобстве.

Читаю:

Интерфейс командной строки (англ. Command line interface, CLI) — разновидность текстового интерфейса (CUI) между человеком и компьютером, в котором инструкции компьютеру даются в основном путём ввода с клавиатуры текстовых строк (команд), в UNIX-системах возможно применение мыши[1]. Также известен под названием консоль.

Ещё раз: между человеком и компьютером, где всё международное сообщество, не имеющее понятия об английском языке да и о самих англичанах - уже не должны (по-умолчанию опять же) считаться людьми.
- Да, а ещё не так давно экспортирующая и импортирующая стороны, опять же уважая интересы народов противоположной стороны - с величайшей строгостью и максимальной комфортностью делали переводы всей документации о заявленном продукте - на язык потребителя оного. Это мы сами их избаловали, с голодухи кинувшись скупать их "мыльницы" и иной непотреб... (рыдая и брызжа во все стороны слюной - посыпаю голову пеплом)))

0

12

Граматный перевод может сделать только носитель языка. Зато заказ перевода за бугром способствует распространению языка.

Между прочим M$ - досихпор исправно переводит справку.  А то что кирилица не пошла в ИТ так то технологическое отстование страны. Вместо изобритательства мы заняты ручным трудом - рутиной.

Но дело не в этом. А в том что даже на западе столько графичиских интерфейсов перепробовали что диву даёшься, а всё равно CLI лидирует по удобству.

Поэтому и существуют десятки граффических редакторов.

0

13

Павиа написал(а):

исправно переводит справку.

- Согласен, недавно попробовал их студию установить и был приятно удивлён качеством их перевода на русский. Жаль, что там сторонних "довесков" полно и вот их-то приходится терпеть непереведёнными... (или пытаться переводить самому)))

0

14

Да, "список, массив, вектор, параграф, пункт, абзац"... Тот же "Notepad++" берём, вглядываемся, - ах, как он красиво "сплюскивает" те "блоки", которые временно мешают. (стоит лишь минус на полях нажать)

Программу можно запихнуть в XML, что-то на подобие HTML получится. Вопрос только в том, чтобы найти баланс между сверткой кода и читаемостью.

А то что кирилица не пошла в ИТ так то технологическое отстование страны. Вместо изобритательства мы заняты ручным трудом - рутиной.

Если я сейчас скажу, Лис будет обижаться за политику :).

А в том что даже на западе столько графичиских интерфейсов перепробовали что диву даёшься, а всё равно CLI лидирует по удобству.

Да ладно Вам. Работаю иногда на линуксе и практически не пользуюсь консолью. И прокси-сервер поднимал с минимальным вмешательством. Это скорее вопрос совместимости и традиций. Совместимость необходима, но она жутко тормозит прогресс.

Согласен, недавно попробовал их студию установить и был приятно удивлён качеством их перевода на русский. Жаль, что там сторонних "довесков" полно и вот их-то приходится терпеть непереведёнными... (или пытаться переводить самому)))

А я майкрософтную справку терпеть не могу. Такая же как у 1С - много умных слов, мало реального понимания излагаемых процессов. Куча синтетической терминологии.

Отредактировано utkin (2018-05-08 09:26:53)

0

15

utkin написал(а):

Куча синтетической терминологии.

- Хе, благо, что меня ещё МДН-щики терпят. Павиа читал уже гугло-яндексовские переводы в моей "редакции". Чтобы избавиться от синтетики машинного перевода - нужно знать переводимый материал лучше, чем знаешь самого себя... Но дела с желающими делать бесплатные переводы обстоят, видимо, настолько плохо, что даже и я сгодился... Перевожу у них SVG-тематику и canvas, одновременно изучая то, чего ещё сам не знаю. Кстати, у них достаточно часто используется XML для рисования тех же фигур, что и в canvas, там просто словки другие...

0


Вы здесь » Русскоязычное программирование » обработка текста » Текст "как плоскость".