Оберон-технология: особенности и перспективы |
Тематика обсуждения: Оберон-технология. Особенности, перспективы, практическое применение.
Всего в теме 6256 сообщений
Добавить свое сообщение
Отслеживать это обсуждение Обсуждение из раздела Школа ОБЕРОНА
№ 2206 23-01-2007 16:14 | |
Ответ на »сообщение 2205« (Владимир Лось)
___________________________
Прикалываетесь?
Нет. А Вы? :)
№ 2205 23-01-2007 16:08 | |
Ответ на »сообщение 2204« (AVC)
___________________________
Ужас!! :)
И что же такое случится?
Прикалываетесь?
№ 2204 23-01-2007 16:00 | |
Ответ на »сообщение 2203« (Владимир Лось)
___________________________
Ответ на »сообщение 2201« (AVC)
___________________________
А если один пишет, а второй читает, никаких гонок нет.
ДА ЧТО ВЫ!!!
А если щедулер у вас вот здесь потоки переключит: if out # in (переди или сразу после операции сравнения) ?????????
Ужас!! :)
И что же такое случится?
№ 2203 23-01-2007 15:48 | |
Ответ на »сообщение 2201« (AVC)
___________________________
А если один пишет, а второй читает, никаких гонок нет.
ДА ЧТО ВЫ!!!
А если щедулер у вас вот здесь потоки переключит: if out # in (переди или сразу после операции сравнения) ?????????
№ 2202 23-01-2007 15:48 | |
Ответ на »сообщение 2199« (AVC)
___________________________
Ответ на »сообщение 2197« (Jack Of Shadows)
___________________________
Но надеюсь вы сами то не разделяете мнение о качестве (!!! AVC ?) или мощи (!!! Илья ?) языка программирования, предназначенного для ЧЕЛОВЕКА, по его близости к ЖЕЛЕЗКЕ.
Если речь идет о моем личном "экспертном" (как человека :) ) мнении, то мне ближе императивные языки, а не функциональные.
Т.е. я не разделяю миф об особой близости ФЯ человеку.
Я-таки придерживаюсь "корпускулярно-волнового" - императивно-функционального дуализма. ИЯ и ФЯ взаимно эквивалентны. Уровень абстрагирования может быть высок и там, и там (и низок иногда тоже - тот же LISP может использоваться как своего рода ассемблер ФЯ). Если язык поддерживает расширение типов в том или ином виде, модульность и компонентность, то уровень абстракции может повышаться до требуемого уровня путем грамотного проектирования интерфейсов, вплоть до того же сведения к функциональному виду. Кстати, в модульном языке легко локализовывать побочные эффекты - по модулям. Можно даже ввести метку для модулей "функционально чист". Есть куда расти и в плане параллельного программирования. Немодульные мейнстримовые императивные языки действительно находятся в тупике, из которого пытаются выбраться путем "мутаций" со всеми другими парадигмами... (Мейнстримовая концепция "класс = модуль" и инкапсуляция на уровне каждого отдельного типа данных приводит к жирным интерфейсам между классами и "размазыванию" побочных эффектов по всей системе).
№ 2201 23-01-2007 15:43 | |
Ответ на »сообщение 2200« (Владимир Лось)
___________________________
"Какето"??? Вы тут же "нарвётесь" на "гонки"! Соми изменения значения in (или out) ОБЯЗАТЕЛЬНО должны быть охранены синхронным (единоличным, эксклюзивным) доступом!
Это ж классика!
С чего бы это?
Один поток пишет (упрощенно, игнорируя во избежание мелких опечаток переполнение и вероятную цикличность буфера):
buf[in] := x;
in := in + 1;
Другой читает:
if out # in then
v := buf[out];
out := out + 1;
end
Гонки начнутся, если писать/читать начнут одновременно больше одного потока.
А если один пишет, а второй читает, никаких гонок нет.
№ 2200 23-01-2007 15:33 | |
Ответ на »сообщение 2196« (AVC)
___________________________
Вот простой "императивный" пример с буфером.
Один поток пишет в буфер, затем изменяет значение переменной in.
Другой поток читает, затем меняет значение переменной out.
Никаких особых примитивов синхронизации не требуется.
"Какето"??? Вы тут же "нарвётесь" на "гонки"! Соми изменения значения in (или out) ОБЯЗАТЕЛЬНО должны быть охранены синхронным (единоличным, эксклюзивным) доступом!
Это ж классика!
№ 2199 23-01-2007 15:32 | |
Ответ на »сообщение 2197« (Jack Of Shadows)
___________________________
Но надеюсь вы сами то не разделяете мнение о качестве (!!! AVC ?) или мощи (!!! Илья ?) языка программирования, предназначенного для ЧЕЛОВЕКА, по его близости к ЖЕЛЕЗКЕ.
Если речь идет о моем личном "экспертном" (как человека :) ) мнении, то мне ближе императивные языки, а не функциональные.
Т.е. я не разделяю миф об особой близости ФЯ человеку.
№ 2198 23-01-2007 15:28 | |
Ответ на »сообщение 2196« (AVC)
___________________________
Один поток пишет в буфер, затем изменяет значение переменной in.
Другой поток читает, затем меняет значение переменной out.
Никаких особых примитивов синхронизации не требуется.
И гарантий тоже не требуется, да ?
Проект в пару миллионов строк кода, и все на честном слове программистов, что ни ни :))
№ 2197 23-01-2007 15:26 | |
Ответ на »сообщение 2193« (AVC)
___________________________
Это как бы показатель качества языка.
Ага. И показатель хреновости качества (!!!) десятиричной системы, да ? :)))
AVC и Илья. Это всего лишь показатель близости к железу. При чем тут качество ?
Я понимаю вы мне тут рассказали про быт, обычаи, традиции и фольклор обероновского (паскалевсого ?) общества.
Все это интересно в плане антропологических исследований различных племен эпохи каменного века программирования.
Но надеюсь вы сами то не разделяете мнение о качестве (!!! AVC ?) или мощи (!!! Илья ?) языка программирования, предназначенного для ЧЕЛОВЕКА, по его близости к ЖЕЛЕЗКЕ.
Что касается bootstrapping, то есть написания самого себя на самом себе :))
То например SBCL (один из популярных open source лиспов) написан сам на себе.
То есть это чисто технические вопросы, которые иногда могут применяться в качестве маркетингового оружия (вот какие мы мощные и качественные :)) ) Но не имеет абсолютно никакого отношения к обьективным качеству и мощи языка программирования, напонимаю еще раз, предназначенного для человека.
Добавить свое сообщение
Отслеживать это обсуждение
Дополнительная навигация: |
|