Rambler's Top100
"Knowledge itself is power"
F.Bacon
Поиск | Карта сайта | Помощь | О проекте | ТТХ  
 Базарная площадь
  
О разделе

Основная страница

Группы обсуждений


Тематический каталог обсуждений

Архив

 
 К н и г и
 
Книжная полка
 
 
Библиотека
 
  
  
 


Поиск
 
Поиск по КС
Поиск в статьях
Яndex© + Google©
Поиск книг

 
  
Тематический каталог
Все манускрипты

 
  
Карта VCL
ОШИБКИ
Сообщения системы

 
Форумы
 
Круглый стол
Новые вопросы

 
  
Базарная площадь
Городская площадь

 
   
С Л С

 
Летопись
 
Королевские Хроники
Рыцарский Зал
Глас народа!

 
  
ТТХ
Конкурсы
Королевская клюква

 
Разделы
 
Hello, World!
Лицей

Квинтана

 
  
Сокровищница
Подземелье Магов
Подводные камни
Свитки

 
  
Школа ОБЕРОНА

 
  
Арсенальная башня
Фолианты
Полигон

 
  
Книга Песка
Дальние земли

 
  
АРХИВЫ

 
 

Сейчас на сайте присутствуют:
 
  
 
Во Флориде и в Королевстве сейчас  05:07[Войти] | [Зарегистрироваться]
Обсуждение темы:
Оберон-технология: особенности и перспективы


Тематика обсуждения: Оберон-технология. Особенности, перспективы, практическое применение. 

Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру


Всего в теме 6256 сообщений

Добавить свое сообщение

Отслеживать это обсуждение

Обсуждение из раздела
Школа ОБЕРОНА

<<<... | 5866—5857 | 5856—5847 | 5846—5837 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 41


№ 5856   29-10-2007 06:43 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5855« (Дядя .СЭМ)
___________________________

... вручить ему цикл обобщающий LOOP. Это - смело. С удовольствием посмотрю эти "игры разума".

Вы лучше книжку Дейкстры почитали бы, чтобы не путаться, кто что обобщает.


№ 5855   29-10-2007 00:53 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5852« (info21)
___________________________

>>>Я не знал, вьюноша Вы или старый дед. Теперь знаю 8)

И опять вынужден с вами не согласиться. Оба предположения мимо.:)

>>>"Есть" только один цикл -- дейкстровский WHILE с несколькими ветками.

Прошу читать мое »сообщение 5851« в редакции:

... как не крути в языке Оберон реализация как минимум двух циклов является избыточной...

>>>Из Оберона-07 LOOP исключен, а WHILE "доращен" до полноценного дейкстровского.

Смело. Не скрою смело - учитывая что произойдет если "среднестатистического программиста" оставить наедине с LOOP...EXIT, вручить ему цикл обобщающий LOOP. Это - смело. С удовольствием посмотрю эти "игры разума".
И предвосхищая ваш ответ хочу спросить - не переоценили количество людей обладающих пластикой и строгостью ума Дейкстры? Сочетание качеств помоему уникальное.


№ 5854   28-10-2007 23:24 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5837« (Стэн)
___________________________

Учитывая сколько споров было по поводу вариантов этих циклов, то очевидно как-то не очень хорошо они решают эту задачу... Точнее особенности, которые необходимо учитывать при решении этой задачи.

Да нет же. Это отражает доступность темы диспутантам 8)
В науке подобных примеров полно.


№ 5853   28-10-2007 23:00 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5850« (AVC)
___________________________
Почему только в Хаскеле?
А разве шаблоны в Си++ или "утиная" типизация в Питоне не так же работают?

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

А шаблоны в си++ вообще из разряда ночных кошмаров.
Пользователям STL потом реабилитацию у психолога проходить надо :))


№ 5852   28-10-2007 22:47 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5851« (Дядя .СЭМ)
___________________________

Это как я понял ссылка на «Заметки по структурному программированию» Дейкстры, мол - «Учите матчасть вьюноша!..»

Не совсем. На книжку "Дисциплина программирования".

Я не знал, вьюноша Вы или старый дед. Теперь знаю 8)

Насчет матчасти Вы поняли правильно, но неправильно среагировали. Впрочем, у Вас-то время есть еще.

"Есть" только один цикл -- дейкстровский WHILE с несколькими ветками.
Все остальное -- либо варианты/обертки/частные случае.
Либо -- как LOOP -- средство оптимизации.
Из Оберона-07 LOOP исключен, а WHILE "доращен" до полноценного дейкстровского.


№ 5851   28-10-2007 17:25 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5819« (info21)
___________________________

Ясно, что задача не формализуема. В этом вся и сложность.
И че ломиться в открытую дверь?


Мир в котором мы существуем вообще весьма трудно формализуем, Для того что-бы хоть как-то с этим справиться и существуют неформальные методы. Эвристики на пример. Что касается двери — извините, двери то я как раз и не приметил. :)

>>>Нет, не кажется. Вы, что ли, Дейкстру не читали? Это насчет циклов. Так почитайте

Это как я понял ссылка на «Заметки по структурному программированию» Дейкстры, мол - «Учите матчасть вьюноша!..»
Прекрасно что «матчасть» вы здесь увидели, огорчительно что не заметили некоторых несоответствий.
Почитаем Дейкстру — согласно сформулированной им дисциплины структурного программирования мы должны ограничится только двумя видами повторений — while и repeat, а все остальные выражать через композицию, у Вирта в Обероне три оператора цикла - while,  repeat и loop. Реализация цикла loop по Дейкстре является избыточной.
Ладно, зайдем с другой стороны — вернемся к нашим языческим корням и устроим «пляски с бубном». Существует «магический» цикл loop при написании в нужном месте которого «волшебного» слова exit можно реализовать любой цикл. С этих позиций в Обероне избыточными являются while и repeat.
Приводя все выше сказанное к единому знаменателю можно сказать: как не крути в языке Оберон реализация как минимум одного из циклов является избыточной, и это в языке писавшемся под лозунгом «Вперед к минимализму!».
По моему мнению это связано с тем что Вирт при создании Оберона стремился в первую очередь к ясности текста написанного на языке, во вторую - следованию дисциплине структурного программирования, и только в третью очередь к компактности языка. Я хотел-бы подчеркнуть - минимализм в третью очередь, а не в первую (»сообщение 5784«). Компактные языки были и до Оберона, но в них не было ни ясности, ни последовательного следования принципам структурного программирования необходимых Вирту. Так что в оценке места минимализма в Обероне мы с вами расходимся.


№ 5850   28-10-2007 15:15 Ответить на это сообщение Ответить на это сообщение с цитированием
В хаскеле так и сделано. Определяете для любого типа операции больше и меньше в классе Ord - и пожалуйста. Любая функция сортировки начинает их принимать в качестве параметров и сортировать, причем со строгой типизацией. При этом никакого наследования как в ООП делать не надо. То есть тип может быть любой вообще. Лишь бы соответствующие операции имел описанные.

Почему только в Хаскеле?
А разве шаблоны в Си++ или "утиная" типизация в Питоне не так же работают?
 AVC


№ 5849   28-10-2007 13:09 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5825« (Антон Григорьев)
___________________________
А вот реализуйте такой класс, который может отсортировать массив элементов любого типа, для которых определены операции "больше" и "меньше", не заставляя программиста писать дополнительные callback-функции или наследники для каждого из этих типов, и тогда я тоже скажу, что вполне можно и без обобщений обойтись.

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


№ 5848   28-10-2007 12:58 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5844« (noname)
___________________________

Ответ на »сообщение 5838« (Илья Ермаков)
___________________________
Например добавим а Оберон константы для массивов и записей. Какие характеристики это ухудшит?

Десятки раз говорилось - все урезания типизации Оберона по сравнению с Модулой вызваны в первую очередь компонентностью. Вы готовы выдать простые правила для импорта составных констант при динамическом связывании, правила их расширения и т.п.? Поэтому оптимумом оказалось исключить и использовать VAR + инициализацию.
Попробуйте, например, реализовать для Ады с её роскошной типизацией динамическую загрузку пакетов. Скорее всего, либо разобьёте лоб, либо придётся урезать язык. Потому что неприспособлен для компонентности.


№ 5847   28-10-2007 12:34 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5841« (Сергей Перовский)
___________________________

>>>Эта область, в которой невозможно улучшить однин критерий не ухудшив другой называется множеством Паретто :)

Если верить Г.С.Альтшуллеру, именно из этого технического противоречия и рождается изобретательская задача.
 AVC


<<<... | 5866—5857 | 5856—5847 | 5846—5837 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 41


Добавить свое сообщение

Отслеживать это обсуждение

Дополнительная навигация:
Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру
  
Время на сайте: GMT минус 5 часов

Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
Функция может не работать в некоторых версиях броузеров.

Web hosting for this web site provided by DotNetPark (ASP.NET, SharePoint, MS SQL hosting)  
Software for IIS, Hyper-V, MS SQL. Tools for Windows server administrators. Server migration utilities  

 
© При использовании любых материалов «Королевства Delphi» необходимо указывать источник информации. Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
Все используемые на сайте торговые марки являются собственностью их производителей.

Яндекс цитирования