OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 26 Апрель, 2024 20:14

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 86 ]  На страницу Пред.  1, 2, 3, 4, 5  След.
Автор Сообщение
СообщениеДобавлено: Четверг, 22 Апрель, 2010 11:25 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Евгений Темиргалеев писал(а):
Info21 писал(а):
Кстати, исходники могут динамически порождаться, компилироваться и загружаться.
В смысле, наглядность закрытия конструкции порождаемого исходника в тексте генератора может обеспечить только END?
Нет, в смысле, что этот исходник вообще никому на фиг не нужен на него смотреть.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 11:26 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Явный END -- что может быть проще и надежней.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 12:05 
Аватара пользователя

Зарегистрирован: Суббота, 19 Ноябрь, 2005 15:59
Сообщения: 803
Откуда: Зеленоград
Представим, что из-за опечатки один отступ пропал.
Вместо
Код:
if cond then
    statement1
    statement2
получится
Код:
if cond then
    statement1
statement2
что также является синтаксически правильной конструкцией.
Без явного end (для if) компилятор, ориентированный только на отступы, не сможет здесь помочь.
Предлагаю считать ввод программистом исходного текста "каналом с помехами" (человеку свойственно ошибаться). :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 12:37 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
AVC писал(а):
Предлагаю считать ввод программистом исходного текста "каналом с помехами" (человеку свойственно ошибаться). :)

Ну тогда извольте развить эту идею дальше. Что такое end? Какую конструкцию он закрывает? А кто его знает -- канал же с помехами.
Тогда надо делать так, как это сделано в Аде -- end if, end loop, end record и т.д.
А просто end -- ни к селу, ни к городу. Толку от него?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 12:41 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
AVC писал(а):
Представим, что из-за опечатки один отступ пропал.
Хм, представим себе, что из-за опечатки плюс превратился в минус -- точно так же ошибка в логике программы. И как этот тип опечаток Вы предлагаете предотвратить?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 13:41 
Аватара пользователя

Зарегистрирован: Суббота, 19 Ноябрь, 2005 15:59
Сообщения: 803
Откуда: Зеленоград
Geniepro писал(а):
Ну тогда извольте развить эту идею дальше. Что такое end? Какую конструкцию он закрывает? А кто его знает -- канал же с помехами.
Тогда надо делать так, как это сделано в Аде -- end if, end loop, end record и т.д.
А просто end -- ни к селу, ни к городу. Толку от него?
В сочетании со значимыми отступами и "простого" end вполне достаточно (IMHO). Его обязательное наличие не даст возможности случайно "перепутать" уровни вложенности операторов.
Всё же, приятно, что Вы вспомнили об Аде. Это прогресс. В недавних постах Вы были противником избыточности. :wink:


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 13:54 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
AVC писал(а):
Всё же, приятно, что Вы вспомнили об Аде. Это прогресс. В недавних постах Вы были противником избыточности. :wink:
Да я и сейчас противник избыточности. А среди императивных языков для меня эталоном является лишь Ада. И если Вы действительно так настаиваете на нужности избыточности, ну так делайте её полноценной, как в Аде. А то метания на полпути -- и значимые отступы, и урезанный end -- ни туда, ни сюда. Ну что за двойные стандарты?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 14:14 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Geniepro писал(а):
А то метания на полпути -- и значимые отступы, и урезанный end -- ни туда, ни сюда. Ну что за двойные стандарты?


Это называется чувство меры (инженерной, в частности). И принятие решений в условиях противоречий реальной жизни.

Люди со склонностью к формалистике и сухой умозрительной работе действительно обычно называют это двойными стандартами.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 14:27 
Аватара пользователя

Зарегистрирован: Суббота, 19 Ноябрь, 2005 15:59
Сообщения: 803
Откуда: Зеленоград
Geniepro писал(а):
Да я и сейчас противник избыточности. А среди императивных языков для меня эталоном является лишь Ада.
Как говорится, не вижу логики. :roll:
Прежде чем спорить о деталях, неплохо бы определиться с основами. Если Вы против "избыточности" (не уверен, что мы говорим об одном и том же), Вы вряд ли можете ценить Аду. (Или Вы упомянули Аду просто так, из чувства противоречия? :wink: )

Мне вполне достаточно обероновской избыточности. Не вижу необходимости в end if и end while, также как в fi и od. (Например, два вложенных if. Чем здесь лучше end if? Впрочем, для ряда задач Ада может оказаться лучшим выбором.)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 14:30 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
AVC писал(а):
Geniepro писал(а):
Да я и сейчас противник избыточности. А среди императивных языков для меня эталоном является лишь Ада.
Как говорится, не вижу логики. :roll:
Прежде чем спорить о деталях, неплохо бы определиться с основами. Если Вы против "избыточности" (не уверен, что мы говорим об одном и том же), Вы вряд ли можете ценить Аду. (Или Вы упомянули Аду просто так, из чувства противоречия? :wink: )
А что, разве есть императивный язык, который был бы спроектирован лучше Ады? И какой же?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 14:39 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Илья Ермаков писал(а):
Люди со склонностью к формалистике и сухой умозрительной работе действительно обычно называют это двойными стандартами.

А Вы всё же ну никак не можете не перейти на личности :lol:


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 15:12 
Аватара пользователя

Зарегистрирован: Суббота, 19 Ноябрь, 2005 15:59
Сообщения: 803
Откуда: Зеленоград
Geniepro писал(а):
А что, разве есть императивный язык, который был бы спроектирован лучше Ады? И какой же?
Для каких задач? Каковы критерии оценки? Входит ли в их число "избыточность"?
Ада здесь -- всего лишь подкрепление точки зрения, что "или вовсе не надо end, или надо использовать непременно end if, end while и т.д."?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 15:19 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
AVC писал(а):
Для каких задач? Каковы критерии оценки? Входит ли в их число "избыточность"?
Ну хотя бы по критерию надёжности ПО. Ведь избыточность синтаксиса Вы считаете полезной для повышения надёжности ПО?

AVC писал(а):
Ада здесь -- всего лишь подкрепление точки зрения, что "или вовсе не надо end, или надо использовать непременно end if, end while и т.д."?
Если уж приспичило Вам добавить этот end -- типа он повышает надёжность ПО своей избыточностью -- так делайте это честно, как в Аде. А просто end никакой надёжности не повышает.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 15:45 
Аватара пользователя

Зарегистрирован: Суббота, 19 Ноябрь, 2005 15:59
Сообщения: 803
Откуда: Зеленоград
Geniepro писал(а):
AVC писал(а):
Для каких задач? Каковы критерии оценки? Входит ли в их число "избыточность"?
Ну хотя бы по критерию надёжности ПО.
Это единственный критерий? (Скажем, простота и размер языка и компилятора не важны?)
Из чего складывается и сколько стоит надёжность Ады?

Geniepro писал(а):
Ведь избыточность синтаксиса Вы считаете полезной для повышения надёжности ПО?
Так ведь Вы то так не считаете. Или это у Вас аргумент исключительно "на экспорт"?

Geniepro писал(а):
А просто end никакой надёжности не повышает.
Так уж и никакой? :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 16:26 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Geniepro писал(а):
Хм, представим себе, что из-за опечатки плюс превратился в минус -- точно так же ошибка в логике программы. И как этот тип опечаток Вы предлагаете предотвратить?
Интересное отсутствие логики.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 16:29 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 1056
Geniepro писал(а):
А просто end никакой надёжности не повышает.
Просто END успешно решает проблему висящего ELSE. А больше от него ничего и не требуется.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 18:15 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
И в данном случае - успешно решает задачу "висящего" elseif


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 18:32 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Geniepro писал(а):
Илья Ермаков писал(а):
Люди со склонностью к формалистике и сухой умозрительной работе действительно обычно называют это двойными стандартами.

А Вы всё же ну никак не можете не перейти на личности :lol:


Это не был переход на личности. Это была констатация особенностей мышления специалистов некоторого склада. В.А. Арнольд тогда тоже в своих статьях на личности переходит, говоря о некоторых проблемах математики (связанных с тем же самым).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 18:36 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Geniepro писал(а):
Ведь избыточность синтаксиса Вы считаете полезной для повышения надёжности ПО?


Некоторое дублирование информации позволяет проверять соответствие и выявлять некоторые ошибки. Также избыточность синтаксиса улучшает восприятие (человек - не машина, воспринимает не формально, а образно).

Избыточность средств и наличие многих путей для одного и того же - это плохо. Этому место в библиотеках, а в языке место тому, для чего уже найден оптимум.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 22 Апрель, 2010 21:08 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Вставлю своё мнение:

1) Конструкции языка должны быть замкнуты.
2) Если хочется с "двумерным" исходным текстом работать, то нужен редактор который, во-первых, работает сразу с синтаксическим деревом (то есть исходник не текстовый в принципе, во всяком случае во время работы). И во-вторых (тут я согласен с Сергеем Прохоренко, но не полностью) - поддерживает визуализацию этого исходного текста, но не просто визуализацию, а работу с этим текстом чётко как с блоками. Чтобы даже слово WHILE нельзя было (и не надо) стереть не удалив всю конструкцию целиком... правда для того, чтобы достичь удобства работы, без напряжения, с такой штукой её нужно долго-долго думать...

...а все эти "значимые отступы" и прочие костыли над простым исходником - дурь.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 86 ]  На страницу Пред.  1, 2, 3, 4, 5  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB