Re[3]: Вношу изменения в свой тезис
От: Трурль  
Дата: 17.08.05 14:16
Оценка:
Здравствуйте, AndreyFedotov, Вы писали:

AF> Если же цель — анализ ради анализа — то подумай — так ли это интересно для всех остальных? (Судя по реакции — по-моему не очень )


Как раз наоборот. Если бы не было интересно, разве была бы такая бурная реакция?
Re[46]: Так лучше?
От: vdimas Россия  
Дата: 17.08.05 14:18
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Чего это за такое? Я не понимаю. Приведите пожалуйста как положено для грамматик — в EBNF форме.


Регулярные грамматики можно приводить в регулярной форме. Правда, в несколько иной, чем привел автор (язык регулярных выражений, пришедший из Юникс — это не язык описания регулярных грамматик, тем более, что позволяет задавать грамматики, не являющиеся регулярными).

Я помню из института две похожие нотации регулярных грамматик, отличались только тем, что в первой циклы задавались фигурными скобками {}, а во второй — звездочкой *.

Есть еще расширенный язык регулярных выражений. Допускается использовать ранее определенные правила и символ '+', обозначающий цикл, начинающийся с, как минимум, одной итерации.
Re[33]: Простота грамматик и простота языка
От: vdimas Россия  
Дата: 17.08.05 17:14
Оценка:
Здравствуйте, VladD2, Вы писали:

ПК>>В прошлый раз, делая это утверждение, ты так и не обосновал его. Так что лучше в качестве аргумента его не использовать...


VD>Тебе показалось. Сравни размер граматик и даже вопрос не возникнет.


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

Применительно к С++, даже если у него меньше синтаксических конструкций (меньше ли, учитывая разный синтаксис для обычных, и 2-х видов ссылочных переменных?), то это лишь означает меньше правил для этапа синтаксического анализа. Однако, у каждого синтаксически корректного предложения языка может быть несколько семантических значений, определямых той самой "полной" грамматикой. В С++ очевидно, мы получаем гораздо больше неоднозначностей на этапе синтаксического разбора.

Грамматика, на которой построен синтаксический анализатор, не есть грамматика языка.
Re[34]: Простота грамматик и простота языка
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.08.05 18:33
Оценка:
Здравствуйте, vdimas, Вы писали:

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


Ты может и сходился. Я как считал, что есть грамматика и все остальное, так и считаю. Все же понятие определенное и довольно однозначное.
... << RSDN@Home 1.2.0 alpha rev. 591>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[42]: Простота грамматик и простота языка
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.08.05 18:33
Оценка:
Здравствуйте, mefrill, Вы писали:

M>Т.е. ты хочешь сказать, что LL(1)-граматика имеет меньше ограничений на синтаксис, чем не LL(1)-граматика??? Если нет, тогда о чем мы спорим?


Нет. Я хочу сказать, что для человека не важно является ли грамматика LL(1), а важны совсем другие факторы.

VD>>Прицип тут простой. Декларация понятнее императивного описания более низкоуровневыми средствами. А чтобы добиться большей декларативности унжно или иметь некие очень не простые механизым ее достижения, либо расширять и усложнять грамматику чтобы впихнуть в нее эти декларативные конструкции.


M>В выделенное не въехал. Почему понятнее?


Потому что это декларация, а не клгоритм. Ну, понятнее людям:
foreach (A a in array)
    f(a);

нежели:
for (int i = 0; i < 0; i++)
    f(array[i]);


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


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

M> Я уже несколько раз пытался объяснить: в лингвистике есть такой принцип композиционной семантики. Он говорит о том, что смысл предложения языка определяется смыслом входящих в предложение лексем и синтаксической конструкцией предложения. Хотя бывают, конечно, и исключения. Если отталкиваться от этого принципа, то при всех прочих равных факторах, чем сложнее структура предложения, тем сложнее его понимать. Что же здесь нелогичного?


Здесь все логично. Не логично утверждение что язык с более простой грамматикой проще понимать.
... << RSDN@Home 1.2.0 alpha rev. 591>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[32]: Простота грамматик и простота языка
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.08.05 18:33
Оценка:
Здравствуйте, mefrill, Вы писали:

M>>> Что мы сравниваем, легкость чтения EBNF и РВ?

VD>>Да.

M>Тогда мы имеем два целевых языка? EBNF и РВ. И две КС-грамматики для них? ТИ мы должны сравнить эти грамматики, а не сами языки?


Прямо как в той рекламе — да, беда...

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

M>Хорошо, как тебе такая EBNF:


M>A:B"45"CB:'3'+'G'*T'|HN:F':'K и т.д. Как вопринимается? И, кстати, попробуй прочитать это не слева направо, а иерархически.


Хреново, так как плохо отформатировано (все слитно), идетификаторы (имена правил) не осмысленные, не совсем знаком с данным диалектом. Но все это легко решаемые проблемы. В то же время в РВ проблемы не решаются.

M>Я снова не понял цели. Есть сложное РВ. Как мы его рассматриваем? Как язык, о котором мы говорим и который задается другой КС-грамматикой и не является регулярным, или как способ задания регулярного языка? И где здесь LL(1)? Честно, я не понял о чем ты говоришь.


LL(1) здесь в описании самих РВ и EBNF. Речь идет об этих языках и их читабельности, а не о грамматиках порождаемых уже на них. Т.е. порождаемая граматика меня интересует только как код который мне нужно понять.
... << RSDN@Home 1.2.0 alpha rev. 591>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Вношу изменения в свой тезис
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.08.05 18:48
Оценка: :))
Здравствуйте, xBlackCat, Вы писали:

E>>За точность цитаты не ручаюсь, но все же:

E>>

E>>Однажды на светском приеме к Бернарду Шоу, у которого была страшноватая внешность, подошла знаменитая светская красавица и сказала: "О, мистер Шоу, я много о вас слышала и знаю, что вы очень умный. Представляете себе, какие у нас были бы дети? Они обладали бы моей внешностью и вашим умом". Бернард Шоу сказал: "Это очень хорошо, но представьте, что будет, если наши дети будут обладать моей внешностью и вашим умом?"


BC>На сколько я помню, наследование происходит чаще всего так, как говорит Бернард Шоу. Хорошо, что он отказал


Злые вы, может баба была непризнанным гением?
... << RSDN@Home 1.2.0 alpha rev. 591>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[37]: Простота грамматик и простота языка
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.08.05 18:56
Оценка:
Здравствуйте, Павел Кузнецов, Вы писали:

Сгласен со всем кроме последнего:

ПК>Резюме: имхо, говорить о читабельности языков столь же некорректно, как и говорить об их производительности. Вместо последнего стоит говорить о производительности конкретных реализаций. Вместо первого -- о читабельности конкретных программ.


Все же от языка, как и от того как на нем пишут очень даже зависит читаемость текста. Ты же сам привел БрэйнФак на котором в принципе нельзя написать понятную программу. Та же фигня и у РВ, хотя не так страшно.
... << RSDN@Home 1.2.0 alpha rev. 591>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Вношу изменения в свой тезис
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.08.05 18:59
Оценка: -1 :)))
Здравствуйте, eao197, Вы писали:

E>Синтез и творчество по отношению к картине -- понятно. И про автомобиль понятно. Даже про марочное вино понять можно.

E>Но вот синтез по отношению к девушке -- это как?

А я вот все задаюсь вопросом... Любовь к Родине это как? Ну, в смысле кто кого имеет?
... << RSDN@Home 1.2.0 alpha rev. 591>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[35]: Простота грамматик и простота языка
От: mefrill Россия  
Дата: 17.08.05 19:24
Оценка: +2
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, vdimas, Вы писали:


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


VD>Ты может и сходился. Я как считал, что есть грамматика и все остальное, так и считаю. Все же понятие определенное и довольно однозначное.


А какая именно грамматика из бесконечного множества? КС-грамматика, КЗ или грамматика без ограничений? Можно си++ задать и регулярной грамматикой, а все остальное парсить вручную. О какой грамматике ты писал?
Re[43]: Простота грамматик и простота языка
От: mefrill Россия  
Дата: 17.08.05 19:27
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здесь все логично. Не логично утверждение что язык с более простой грамматикой проще понимать.


При прочих равных критериях!? Согласен ты с тем, что сложность грамматики — это один из критериев сложности языка? Большего я не утверждаю.
Re[38]: Простота грамматик и простота языка
От: Павел Кузнецов  
Дата: 17.08.05 19:37
Оценка:
VladD2,

> ПК> Резюме: имхо, говорить о читабельности языков столь же некорректно, как и говорить об их производительности. Вместо последнего стоит говорить о производительности конкретных реализаций. Вместо первого -- о читабельности конкретных программ.


> Все же от языка, как и от того как на нем пишут очень даже зависит читаемость текста. Ты же сам привел БрэйнФак на котором в принципе нельзя написать понятную программу. Та же фигня и у РВ, хотя не так страшно.


В такой постановке и я бы согласился. Т.е., если язык не позволяет написать читабельную программу — да, дефект (в плане читабельности) в нем. Но пока похоже, что mefrill говорит о чем-то другом, т.к. обсуждаемые языки программирования со сложными грамматиками читабельные программы писать позволяют.
Posted via RSDN NNTP Server 2.0 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
Re[38]: Простота грамматик и простота языка
От: Дарней Россия  
Дата: 18.08.05 03:52
Оценка: 7 (1) +3 :)
Здравствуйте, mefrill, Вы писали:

M>Т.е. вообще нет смысла говорить о сложности языка? Согласен ли ты с тезисом: чем сложнее язык — тем сложнее его понимание?


Я не согласен.
Если ты пытаешься выразить сложную мысль на слишком простом языке, то получится очень хреново. Просто потому, что объем высказываний очень быстро превысит критический предел понимания. Например, можно предположить, что чертовски трудно прочитать доклад о новейших достижениях программирования на языке эскимосов
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[39]: Простота грамматик и простота языка
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 18.08.05 05:50
Оценка:
Здравствуйте, Дарней, Вы писали:

Д>Здравствуйте, mefrill, Вы писали:


M>>Т.е. вообще нет смысла говорить о сложности языка? Согласен ли ты с тезисом: чем сложнее язык — тем сложнее его понимание?


Д>Я не согласен.

Д>Если ты пытаешься выразить сложную мысль на слишком простом языке, то получится очень хреново. Просто потому, что объем высказываний очень быстро превысит критический предел понимания. Например, можно предположить, что чертовски трудно прочитать доклад о новейших достижениях программирования на языке эскимосов

В языке "эскимосов" просто нет соответсвующих терминов. То есть нет соответсвующих терминалов. Сложность же не зависит от количества терминалов, а зависит только от класса по Хомскому. От количества терминалов зависит объем.
Re[40]: Простота грамматик и простота языка
От: Дарней Россия  
Дата: 18.08.05 06:03
Оценка: +1
Здравствуйте, Сергей Губанов, Вы писали:

СГ>В языке "эскимосов" просто нет соответсвующих терминов. То есть нет соответсвующих терминалов. Сложность же не зависит от количества терминалов, а зависит только от класса по Хомскому. От количества терминалов зависит объем.


Не только терминов, но и конструкций, с помощью которых их можно объединять. К примеру, если в языке нет будущего времени, то становится намного сложнее выражать некоторые мысли.
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[3]: Не верю
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 18.08.05 06:05
Оценка:
Здравствуйте, AndreyFedotov, Вы писали:

AF> Сергей! Ты действительно предложил лучший вариант, чем был изначально. Но дело тут вовсе не в тезисе.

AF>Дело в том, что сама область настолько обширна, что просто-напросто не описывается разумным образом с помощью каких-либо тезисов.

AF> Это как красивая девушка. Или красивая картина, интересный фильм, шикарный автомобиль или марочное вино. Можно выдвинуть сколько угодно тезисов — как верных так и не верных. И всё равно — тезисы это одно — а девушка как и картина — совсем другое.


Позвольте Вам не поверить. Я думаю, что программирование — это не искуство, а смесь науки и технологии. Поэтому не допускаю мысли об иррациональном подходе к данной дисциплине. Более того, языки программирования компьютеров — это инструменты. Инструменты могут быть простыми или сложными, маленькими или большими, но они всегда рациональны, стало быть обозримы, понятны, формализуемы и т. п..

AF> Спроси себя — зачем ты затеваешь все эти дискуссии?


Ответ на этот вопрос мне известен точно. Практически все затеянные мной дискуссии на этом форуме имеют одну определённую цель.
Re[4]: Не верю
От: Bigger Российская Империя  
Дата: 18.08.05 06:32
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

skip

СГ>Ответ на этот вопрос мне известен точно. Практически все затеянные мной дискуссии на этом форуме имеют одну определённую цель.


Сергей, Вы не новый язык программирования разрабатываете?

Программист — это шаман..., подарите бубен!
Re[10]: Вношу изменения в свой тезис
От: Privalov  
Дата: 18.08.05 06:44
Оценка:
Здравствуйте, VladD2, Вы писали:

BC>>На сколько я помню, наследование происходит чаще всего так, как говорит Бернард Шоу. Хорошо, что он отказал


VD>Злые вы, может баба была непризнанным гением?


Зато Бернард Шоу, может и не гений, но признанный.
Re[4]: Не верю
От: Дарней Россия  
Дата: 18.08.05 07:33
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Ответ на этот вопрос мне известен точно. Практически все затеянные мной дискуссии на этом форуме имеют одну определённую цель.


неужели эта цель — популяризация оберона в массах?
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[5]: Не верю
От: Курилка Россия http://kirya.narod.ru/
Дата: 18.08.05 07:37
Оценка: +4 :))
Здравствуйте, Дарней, Вы писали:

Д>Здравствуйте, Сергей Губанов, Вы писали:


СГ>>Ответ на этот вопрос мне известен точно. Практически все затеянные мной дискуссии на этом форуме имеют одну определённую цель.


Д>неужели эта цель — популяризация оберона в массах?


Что-то мне дак это больше напоминает дискредитацию оного
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.