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

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

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


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

Архив

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


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

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

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

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

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

 
   
С Л С

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

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

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

Квинтана

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

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

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

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

 
  
АРХИВЫ

 
 

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


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

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

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

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


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

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

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

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

<<<... | 1826—1817 | 1816—1807 | 1806—1797 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 445


№ 1816   16-01-2007 17:33 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1814« (RBV)
___________________________

Вот здесь
http://www.yur.ru/science/computer/appro/monografia.htm
автор предлагает подход, который называет "аппроксиметикой".
Тут
http://www.yur.ru/science/computer/appro/predisl.htm
его (автора) страшно хвалят.
Но... смущает соавторство с Жириновским, особенно -- в "Азбуке секса" (?!). :)
 AVC


№ 1815   16-01-2007 17:03 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1814« (RBV)
___________________________


Погрешность накапливается в численных методах однозначно. На то они и численные :). Тип "значение и погрешность" не подойдет. Алгебру для него устанете создавать. Есть более простое решение - интервальное исчисление, с проработанной теорией. Но производительность, конечно, упадет.

Вообще не все задачи решаемые численными методами, правомерно ими решаются. А часто и вообще бездоказательно.


Тема заинтересовала.
Отчасти потому что сейчас встала задача обеспечить один из наших процов качественной математической библиотекой.
Я тут попросил одну нашу программистку написать несколько функций.
А когда программа зациклилась, то обнаружил примерно такую функцию (по памяти):


#define EPS 1E-5

float sqrt(float x)
{
    float y = 1, y0;
    do {
        y0 = y;
        y = (y0 + x / y0) * 0.5;
    }
while (fabs(y-y0) >= EPS);
    return y;
}


Вообще (ИМХО) культура вычислений упала.
Вот вопрос: в каком учебнике современный программист найдет сoвет, как ему выбрать "эпсилон"?
 AVC


№ 1814   16-01-2007 16:30 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1805« (Сергей Перовский)
___________________________

Ответ на »сообщение 1804« (Jack Of Shadows)
___________________________
Не далее как вчера беседовал со специалистами по гидро-аэродинамике.
Я убеждал их, что в их численном методе возможно накопление погрешности и предлагал вместо стандартных чисел, для пробы использовать арифметику, учитывающую погрешность. Что стоит написать такой тип: "физическая величина", имеющий значение и погрешность?


Погрешность накапливается в численных методах однозначно. На то они и численные :). Тип "значение и погрешность" не подойдет. Алгебру для него устанете создавать. Есть более простое решение - интервальное исчисление, с проработанной теорией. Но производительность, конечно, упадет.

Вообще не все задачи решаемые численными методами, правомерно ими решаются. А часто и вообще бездоказательно.


№ 1813   16-01-2007 15:12 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1812« (Geniepro)
___________________________

Возможно, претензии к отсутствию перечислимого типа ушли бы, если бы в Оберонах были типизированные константы.
Кстати, а почему их-то нет? В чём такое уж преимущество указания
CONST C = 5;
вместо
TYPE TColor = INTEGER;
...
CONST C : TColor = TColor(5);

или

CONST C : TColor = TColor(5);
Ну, прибавляется указание типа, ну и что?
Это же не трудно, зато повысится надёжность...


В виртовских языках константы и так (без специального описания) принадлежат к определенному типу.
Например

  • 5 есть INTEGER
  • 5.0 есть REAL
  • TRUE есть BOOLEAN

Принцип такой: тип константы можно определить по ее виду.
Возможно, это спорный подход. Надо подумать.
 AVC


№ 1812   16-01-2007 14:56 Ответить на это сообщение Ответить на это сообщение с цитированием
Возможно, претензии к отсутствию перечислимого типа ушли бы, если бы в Оберонах были типизированные константы.
Кстати, а почему их-то нет? В чём такое уж преимущество указания

CONST C = 5;


вместо

TYPE TColor = INTEGER;
...
CONST C : TColor = TColor(5);

или

CONST C : TColor = TColor(5);


Ну, прибавляется указание типа, ну и что?
Это же не трудно, зато повысится надёжность...


№ 1811   16-01-2007 14:55 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1804« (Jack Of Shadows)
___________________________

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

Ай-яй-яй, нехорошо смеяться над больными людьми! :о)

Мне в моих микроконтроллерных программах на С именно так и приходиться поступать!

Размер стека - несколько десятков байт, кучи - нет, доступная мне часть ОЗУ (регистрового файла) - меньше двухсот байт.
Локальные переменные в функциях моментально приводят к переполнению стека...
Хорошо, хоть в С есть union - хоть какое-то повышение уровня абстракции у многократно реюзанных ячеек памяти... :о)
За секунду - аж от 2 до 12 миллионов операций...


№ 1810   16-01-2007 14:34 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1809« (Илья Ермаков)
___________________________


Вот тут бы, кстати, говоря С++ с шаблонами и инлайном ой как пригодился. Один из немногих случаев, когда у ЦеПлюса есть весомое преимущество.


Или специализированный язык со встроенным соответствующим типом.
Наподобие расширения Оберона-2 для комплексных чисел.
 AVC


№ 1809   16-01-2007 14:22 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1805« (Сергей Перовский)
___________________________

Ответ на »сообщение 1804« (Jack Of Shadows)
___________________________
Что стоит написать такой тип: "физическая величина", имеющий значение и погрешность?
Они говорят - мы вылизываем и оптимизируем алгоритм под конкретный процессор чтобы за рабочий день успеть произвести хотя бы один расчет. А тут потеря на порядок. Мы так не играем.

Вот тут бы, кстати, говоря С++ с шаблонами и инлайном ой как пригодился. Один из немногих случаев, когда у ЦеПлюса есть весомое преимущество.


№ 1808   16-01-2007 14:21 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1795« (pepper)
___________________________


>>В принципе, так же, как это делает "посмертный отладчик".
(Т.е. опять-таки используем один механизм, а не плодим кучу механизм ad hoc.)
Берется frame pointer и т.д.

Картина маслом: "Физик-ядерщик берет frame pointer и раскручивает стэк".


Может быть, такая вот "пикча" -- "физик-ядерщик придирчиво инспектирует состояние стека после трапа" -- покажется более реалистичной? :)


Исключения в C++ раздувают бинарник в размере. О временных затратах я слышу первый раз от тебя. На популярных компиляторах ничего такого не наблюдается.


Просто представьте себе механизм обработки исключения.
Требуется найти первый подходящий обработчик, и чтобы отработали деструкторы автоматических объектов.
Для этого требуется некоторая информация.
В Си++ она как правило генерится в процессе выполнения программы.
Отсюда потери (говорят, в среднем процентов 20).
Конечно, этого можно избежать. Один способ мы уже знаем.
Не откажу себе в удовольствии отрывок из книги Страуструпа, написанный с характерной для него прямотой. :)

14.8. Исключения и эффективность



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


Если нужна моя интерпретация, то вот она -- Страуструпу трудно выдавить из себя фразу вроде "исключения требуют некоторого оверхеда". :)
 AVC


№ 1807   16-01-2007 14:19 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1805« (Сергей Перовский)
___________________________
Еще пример. Не так давно участвую в работе команды, делающей продукты для анализа текста (rco.ru). Они используют С++ (пока, я надеюсь :-) ). Пару лет назад я удивлялся - а почему не языки ИИ, вроде Лиспа и т.п.? В умных книжках читал заявления, что "писать системы ИИ на императивном языке - немыслимо" и т.п.
Как только стал работать - понял. То, что у них есть, прекрасно работает и применяется на практике, в отличие от многих лабораторных "коней в вакууме". Однако - они вылизывают множество мелочей, оптимизируют код - и все равно система работает очень и очень неспешно. Такова специфика алгоритмов - сложные свертки деревьев по синтаксическим правилам русского языка, перебор многих вариантов с отсечением и т.п. Казалось бы - рай для декларатива. Однако сколько бы система, написанная на Прологе, перемалывала коллекцию СМИ со всей страны, страшно представить...


<<<... | 1826—1817 | 1816—1807 | 1806—1797 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 445


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

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

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

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

Перейти на конкретную страницу по номеру
  
Время на сайте: 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» необходимо указывать источник информации. Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
Все используемые на сайте торговые марки являются собственностью их производителей.

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