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

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

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


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

Архив

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


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

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

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

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

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

 
   
С Л С

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

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

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

Квинтана

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

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

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

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

 
  
АРХИВЫ

 
 

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


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

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

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

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


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

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

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

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

<<<... | 4856—4847 | 4846—4837 | 4836—4827 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 142


№ 4846   06-06-2007 17:27 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4845« (Илья Ермаков)
___________________________

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

Ну не знаю, не знаю...
Я как-то запустил миллион потоков на Хаскелле, тормозило, но работало.
Правда, работой это назвать трудно - всего лишь увеличение на единицу одной глобальной переменной-счётчика. Тест, конечно, несерьёзный, но всё-же...


№ 4845   06-06-2007 15:51 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4843« (Geniepro)
___________________________

Ответ на »сообщение 4842« (Илья Ермаков)
Недавно на RSDN'е огрмный флейм по этому поводу возник - насколько хороши десятки и сотни тысяч лёгких процессов Ерланга в сравнении с несколькими агентами (активными объектами), реализованными в тяжёлой многозадачности.
Основной довод ерлангеров - реактивность и надёжность системы с огромной кучей лёгких потоков, работающих с вводом/выводом (т.е. в условиях неопределённости их времени исполнения) гораздо выше, чем у нескольких тормозных агентов...
И это - на одноядерном компьютере...

Правы эрлангеры. Только "несколько тормозных агентов" - это не активные объекты... RSDN-щики-императившики не знают и не могут знать, что такое активные объекты - ибо акромя абстракций Явы, Шарпа и ВинАпи ничего особенно не нюхали... Их инструментарий не позволяет писать приложения с асинхронностью в сотни и тысячи агентов... Обероны позволяют. И мгновенный старт 16 тыс. активностей на Бутылке ничем не хуже, чем на Эрланге. Активный Блэкбокс я тоже затачиваю под гиперасинхронность, хотя выше тысячи активностей не прыгнуть - потолок нижележащей ОС... Однако есть изюминка - автоматическая остановка активных объектов, это должно дать такой же эффект, какой в свое время дала сборка мусора - приводит к радикальным изменениям в проектировании, т.к. можно забыть о централизованном управлении объектами, их не нужно держать больше на коротком поводке, отпустил в систему - и забыл.

Кстати, уважаемые наши коллеги ФП-шники, помните ваши примеры про веб-сервер на Эрланге, который "делает" апач во много раз? Вы не обратили внимание и умолчали такую вещь, что этот веб-сервер крутился на спец. ОС, которая и обеспечивает легкое диспетчерирование тысяч потоков... А "тормознутость" Апача зависит не от Апача, а от низлежащих операционных систем вроде Винды/Юникса, которые строились сами знаете на идеях какой давности, и больше той самой пресловутой тысячи потоков в принципе держать не могут. Их разработчикам и в голову прийти не может, что можно писать ПО с такой асинхронностью - еще бы, на Цях и API уровня CreateThread и Semaphore больше пяти-десяти агентов в системе построить невозможно...


№ 4844   06-06-2007 14:40 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4841« (Jack Of Shadows)
___________________________

Ответ на »сообщение 4840« (Сергей Осколков)
___________________________
Механизм фильтрации и выборки данных из списков, массивов итд.

Нет, не только из списков массивов и т.д., но и из баз данных (DLINQ).


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

Как это соотносится с моими словами, не понял. Я разве написал, что это узкая задача? Я написал, что в C# вводят язык запросов. Да, это строго говоря, не SQL, но в части взаимодействия с базами данных он играет ту же роль, что и SQL и запросы преобразуются в SQL запросы к БД.


№ 4843   06-06-2007 11:52 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4842« (Илья Ермаков)
___________________________

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

Особенно там подчёркивают проблему с пониманием и рефакторингом кода с несколькими агентами, выполняющими кучу разных задач, запросов и т.д...


А вот параллельные Обероны к этому готовы :-) Плюс в последних языках типа Зоннона и Композиты обкатывается столь мощный декларатив на протоколы, что...

Ну, посмотрим, посмотрим...


№ 4842   06-06-2007 11:08 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4836« (Geniepro)
___________________________

Ответ на »сообщение 4827« (Илья Ермаков)
___________________________
В последнее время, со всё большим распространением многоядерных архитектур, всё болше начинает распространяться и мнение, что Си - уже устарел и не позволяет достаточно легко и просто использовать все возможности множества ядер...
Так что хочешь-не хочешь, а придётся постепенно перебираться на более высокоуровневые языки...
Не то, что бы Хаскелл в этом плане был лучше всех, но всё же... Время Си, Паскаля, Оберона постепенно проходит... Наступает время Ерланга, Data Parallel Haskell, Зонона, в конце концов...

Прекратите Вы, в конце концов, ссылаться на мультипроцессоры как на "могильщика" для Паскалей. Для Си - да, но не для нас - увольте :-) В вашей ветке я уже подробно ответил Джеку на его сентенции о том, что "циклы ручками параллелить утомитесь". Никто и не будет параллелить какждый цикл - какой смысл в "мелкорубленном фарше"? В любой системе всегда найдется множество объектов-агентов, которые можно запустить выполняться асинхронно - и незачем асинхронить отдельно взятые циклы... Паралельные Обероны готовы принять вызов и обеспечить гиперасинхронность - тысячи активных автономно живущих объектов, жизненный цикл которых контролируется автоматически, сборщиком мусора... Ядер не напасетесь, чтобы их реально запараллелить, но даже и без этого программирование существенно облегчается... К тому же сейчас в моду идет GRID и метакомпьютинг - там тоже отдельные циклы особо не "нарубаешь", все-таки не в едином адресном пространстве сидим... Те задачки, которые решались на MPI, например, - с малодинамическими данными, легко рубящиеся на отдельные диапазоны-подзадачи, ФП, конечно, отлично будет параллелить. Более сложные системы, с перманентным жизненным циклом - еще вопрос. А вот параллельные Обероны к этому готовы :-) Плюс в последних языках типа Зоннона и Композиты обкатывается столь мощный декларатив на протоколы, что...


№ 4841   06-06-2007 10:53 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4840« (Сергей Осколков)
___________________________
Ну это не sql. Linq это list comprehensions.
Механизм фильтрации и выборки данных из списков, массивов итд.
Вы что, никогда не пыьались выбрать из списка данные отвечающие определенному критерию ? Вы хотите сказать что эта задача является узко-специальной, так же как и доступ к базам данных ?



№ 4840   06-06-2007 09:16 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4839« (Сергей Перовский)
___________________________

Ответ на »сообщение 4832« (FR)
___________________________
Я уже упоминал тут SQL. Ни у кого не возникает поползновений включить синтаксис SQL прямо в Паскаль или C++. Зачем же включать синтаксис функционального подхода в императивный язык.

В паскаль и C++ может быть и не возникало, а в C# SQL вставить пытаются. :) Проект называется LINQ (Language Integrated Query)
Вот например
http://en.wikipedia.org/wiki/Language_Integrated_Query


№ 4839   06-06-2007 07:28 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4832« (FR)
___________________________
Полно гибридных языков подерживающих как функциональщину так и императив например Ocaml
Я уже упоминал тут SQL. Ни у кого не возникает поползновений включить синтаксис SQL прямо в Паскаль или C++. Зачем же включать синтаксис функционального подхода в императивный язык. Выполнение функциональных фрагментов так же легко локализуется по месту и времени выполнения в императивном окружении, как и выполнение SQL запроса.
Если идти от императивного языка, то вставки могут быть реализованы на любом функциональном языке с минимальными соглашениями о совместимости.
А вот в функциональные языки приходится вводить императивность для общения с "окружающей средой", нарушая целостность и перетяжеляя язык.


№ 4838   06-06-2007 07:17 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4829« (FR)
___________________________
Под сложностью имелось в виду в первую очередь реализация, то есть компилятор современного языка вряд ли может быть простым (как я понимаю по Вирту наооборот).
Во вторых сложность на самом деле позволяет более просто выражатся, многие абстракции в той же функциональщине сложнее и для понимания и по реализации и по теоритеческой базе большинства императивных конструкций, но они же позволяют делать код более кратким и понятным.

Чего-то я недопонял. Если удается просто выражаться, то с чего-бы компилятору быть сложным? Как будто простое для человека должно быть сложным для компилятора.
Может быть Вы имеете в виду сложность освоения? Тогда все зависит от базового образования и наработанных шаблонов. Извините за банальный пример "функциональщины", но в Excel'е можно научить программировать каждого ду..., ну просто каждого. И никакой проблемы с пониманием высоких абстракций не возникает.


№ 4837   06-06-2007 06:00 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 4836« (Geniepro)
___________________________

Не то, что бы Хаскелл в этом плане был лучше всех, но всё же... Время Си, Паскаля, Оберона постепенно проходит... Наступает время Ерланга, Data Parallel Haskell, Зонона, в конце концов...

Да не заморачивайтесь Вы на этот счет. Тот же Торвальдс в этой сфере ни ухом ни рылом. А потом, когда приспичило, стал задумываться, что моноядро должно как-то в такой обстановке работать... Параллельным программированием (concurrent, parallel и asynchronous) у нас занимались с 1960-х годов. Подходы разные. Микроуровень, макроуровень. Это епархия тех, кто занимался активно задачами real-time и научными расчетами. Сильный источник сконцентрирован тут: http://www.parallel.ru/

Собственно следующие версии Windows (или варианты) -- это заточка под многоядерные процессоры. Автоматическое распараллеливание -- весьма ограниченный подход. Нужна хинтовка со стороны программиста. Т.е. нужны средства для того, чтобы мозги человека были под это заточены. А вот тут вступают в игру более серьезные подходы. В том числе и архитектурные. Еще раз упомяну то, чем занимался 20 лет назад, когда изучал методологию Mascot-3 Минобороны Великобритании, кардинально переделывая ее на свой лад. Вся система разбивается на активные и пассивные элементы. Их могут быть тыщи и тыщи (мульоны и мульоны). Строятся схемы асинхронно-синхронного взаимодействия. А вот этот бульон уже полностью готов к распараллеливанию (автоматическому) с хорошим формальным анализом.

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

А что до Оберона, то нынешний компьютер фон Неймана в компактной форме реализован прилично только в Си и Обероне. Но Оберон выглядит предпочтительнее.


<<<... | 4856—4847 | 4846—4837 | 4836—4827 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 142


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

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

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

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

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

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