OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 20 Сентябрь, 2020 14:21

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




Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Воскресенье, 26 Февраль, 2006 14:30 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Илья Ермаков писал(а):
Хочется межъязыкового единообразия - эту проблему более-менее успешно решили в .NET


Скорее менее чем более :D.

Такие языки как Oberon/Component Pascal на Net без оверхеда не отображаемы по нескольким причинам: из-за отсутствия в Net полноценных value-типов (расширяемых struct и value-типовых массивов); вложенных процедур; модулей (Net-овская dll - это не модуль, а библиотека классов, которая хоть и может подключаться динамически, но отключаться не может). Короче, вычислительная модель Oberon/Component Pascal шире чем вычислительная модель Net.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 28 Февраль, 2006 03:55 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 1857
Сергей Губанов писал(а):
Короче, вычислительная модель Oberon/Component Pascal шире чем вычислительная модель Net.


Что такое "вычислительная модель"? И если она "шире", то почему не видно такого разнообразия компиляторов для оберон-систем, как для .NET?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 28 Февраль, 2006 21:37 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9281
Откуда: Россия, Орёл
Цитата:
то почему не видно такого разнообразия компиляторов для оберон-систем, как для .NET?

Что касается разноязыковых компиляторов, то эта цель пока никогда и не ставилась. Пфистер прямо пишет, что объектная модель ББ - моноязыковая, и в этом есть как свои минусы, так и некоторые весомые плюсы. Лично мне хотелось бы видеть единую объектную модель (т.е. двоично совместимую) и рантайм для семейства модульных языков - все Обероны, Зоннон, Модула и желательно Ады (хотя кое-что в ней придется скорректировать)... Любую из версий Паскаля включать, очевидно, смысла нет, - все это либо устарело, либо в своем варианте частично черпалось из Модулы-Оберона.

Цитата:
Что такое "вычислительная модель"?

Интуитивно мне понятно, что это, но что именно имел в виду Сергей - это уж он сам объяснит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 01 Март, 2006 03:06 

Зарегистрирован: Суббота, 28 Январь, 2006 00:10
Сообщения: 52
Откуда: г. Киров
Цитата:
Что такое "вычислительная модель"? И если она "шире", то почему не видно такого разнообразия компиляторов для оберон-систем, как для .NET?


Прежде чем задавать такие вопросы (Что такое "вычислительная модель"?) - можно хотябы в инете посмотреть, ведь тут не форум по борьбе с программисткой безрамотностью. А то как-то, по моему, неудобно: представлятся знатоком ИТ и при этом не знать базовых понятий введенных фон Нейманом.

"Шире" - значит вводятся нове понятия, отсутсвующие в базовой модели. В этом смысле тот же Perl, Fortran, C++ (забудем про Managed C++) - тоже расширяют модель вычислений .Net.

Вопрос по разнообразию бессмысленнен: 1) .Net - ОБЩЕЯЗЫКОВАЯ исполняющая среда. 2) Оберон - конкретный язык программирования;
Пытаться сравнивать 1) с 2) может ну разве что дилетант в программировании.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 01 Март, 2006 05:22 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 1857
Алексей Елин писал(а):
Вопрос по разнообразию бессмысленнен: 1) .Net - ОБЩЕЯЗЫКОВАЯ исполняющая среда. 2) Оберон - конкретный язык программирования;
Пытаться сравнивать 1) с 2) может ну разве что дилетант в программировании.


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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 01 Март, 2006 09:03 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9281
Откуда: Россия, Орёл
Цитата:
Вопрос по разнообразию бессмысленнен: 1) .Net - ОБЩЕЯЗЫКОВАЯ исполняющая среда. 2) Оберон - конкретный язык программирования;
Пытаться сравнивать 1) с 2) может ну разве что дилетант в программировании.


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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 01 Март, 2006 16:04 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Vlad писал(а):
Что такое "вычислительная модель"? И если она "шире", то почему не видно такого разнообразия компиляторов для оберон-систем, как для .NET?


Шире в том смысле, что реализация Oberon/Component Pascal под платформу .Net невозможна без оверхеда. А вот наоборот .Net поверх Oberon-системы - пожалуйста!

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 01 Март, 2006 16:08 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Алексей Елин писал(а):
Вопрос по разнообразию бессмысленнен: 1) .Net - ОБЩЕЯЗЫКОВАЯ исполняющая среда. 2) Оберон - конкретный язык программирования;
Пытаться сравнивать 1) с 2) может ну разве что дилетант в программировании.


Oberon - это, в данном случе, не язык, а система (просто называются одним и тем же словом, не понять это может только дилетант в программировании). Сравнивать систему Oberon и систему .Net вполне уместно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 01 Март, 2006 19:53 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1027
Цитата:
Как реакция на бессмысленное (и на мой взгляд тоже) утверждение.

А какой еще должен быть смысл? Сказано что в .NET отсутствует вложенность процедур. Поэтому её ВМ уже обероновской. Не понятно только почему это сделано. Но спрашивать об этом здесь неудобно. Лучше в отдельной теме на другом форуме.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 01 Март, 2006 23:31 

Зарегистрирован: Суббота, 28 Январь, 2006 00:10
Сообщения: 52
Откуда: г. Киров
Цитата:
Oberon - это, в данном случе, не язык, а система (просто называются одним и тем же словом, не понять это может только дилетант в программировании).

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

Цитата:
Сравнивать систему Oberon и систему .Net вполне уместно.

Если разговор идет о ВОЗМОЖНОСТЯХ фреймворков - то пожалуйста, сравнивайте сколько угодно!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 02 Март, 2006 00:06 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 1857
Сергей Губанов писал(а):
.Net - урезанный Oberon.


Рассматриваю этот бред как очередной повод к флейму.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 02 Март, 2006 13:56 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9281
Откуда: Россия, Орёл
При всех недостатках .NET, не будем забывать, что идея мультиязыковости в такой степени еще нигде не воплощена. И абсолютная прозрачность для сетевого взаимодействия сборок, например, через Http - тоже вещь немаловажная. Но инструментальная среда VS, на мой взгляд, подобна бронтозавру по неуклюжести и неповоротливости.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 02 Март, 2006 18:11 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Илья Ермаков писал(а):
При всех недостатках .NET, не будем забывать, что идея мультиязыковости в такой степени еще нигде не воплощена.

Так она и в Net воплощена только для языков опирающихся либо на изоморфную .Net вычислительную модель, либо на еще меньшую. Например, у машины Java вычислительная модель ещё меньше чем у .Net. Так что Java поверх .Net работать будет прекрасно. Говорить о мультиязыковости .Net для всех остальных языков, опирающихся на более широкие вычислительные модели, не имеет смысла. Зачем под .Net программировать на "неумещающемся" в ней языке получая (невидимый/неожидаемый) оверхед на ровном месте (из-за эмуляции), если можно сразу взять канонический (безоверхедный) для неё язык C#? Что же касается языков полностью изоморфных языку C# (опирающихся ровно на туже самую вычислительную модель), то да, конечно, тут вот мультиязыковость есть. Но эти языки отличаются только лишь обозначениями. Каков смысл иметь несколько таких в точности одинаковых языков? Смысл чисто маркетинговый.

Илья Ермаков писал(а):
...сетевого взаимодействия...

Это можно было вынести на уровень библиотек, а не встраивать...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 02 Март, 2006 20:05 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9281
Откуда: Россия, Орёл
Цитата:
Например, у машины Java вычислительная модель ещё меньше чем у .Net.

Сергей, а вы не путаете вычислительную модель языка, с которой имеет дело программист, и вычислительную модель той платформы, на которой выполняется бинарный код. Вычислительная модель I386 гораздо уже, чем вычислительная модель NET VM, и что дальше? В том и задача любого компилятора, чтобы свести код для более мощной выч. модели в код для боле простой. Как же приложния, скомпилированные с Оберона, успешно выполняются ена JavaVM? Другой вопрос, что для подстройки под модуль, нап. на другом языке, надо отказываться от некоторых средств - ну так если возникла необходимость писать проект смешанно - ничего не поделаешь...

Цитата:
Это можно было вынести на уровень библиотек, а не встраивать...

Можно и на ассемблере писать вместо ЯВУ...
Задача прозрачного удаленного взаимодействия кода очень актуальна. Это и QNX, и Amoeba, и .NET.

Резюме: Надо делать Distributed Oberon System!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 02 Март, 2006 20:09 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9281
Откуда: Россия, Орёл
Цитата:
Зачем под .Net программировать на "неумещающемся" в ней языке получая (невидимый/неожидаемый) оверхед на ровном месте (из-за эмуляции), если можно сразу взять канонический (безоверхедный) для неё язык C#?


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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Суббота, 04 Март, 2006 10:51 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Илья Ермаков писал(а):
Сергей, а вы не путаете вычислительную модель языка, с которой имеет дело программист, и вычислительную модель той платформы, на которой выполняется бинарный код.


Вычислительная модель языка C# в точности совпадает с вычислительной моделью платформы .Net. Это её канонический язык. Поэтому, ничего я тут не путаю.

Про бинарный код (и unsafe режим) ниже:
Илья Ермаков писал(а):
Вычислительная модель I386 гораздо уже, чем вычислительная модель NET VM

Задыхаясь от переполняющих чувств: НАОБОРОТ!!!

Самая широкая вычислительная модель, которая включает в себя все остальные, есть такая модель, которая позволяет модифицировать любой участок памяти, какой только вздумается, когда вздумается и как вздумается (x86 это делать позволяет). Более узкие вычислительные модели получаются в результате накладывания ОГРАНИЧЕНИЙ на способы чтения и модификации памяти за счёт введения новых уровней абстракции: типизированные переменные, инкапсуляция, полиморфизм и т.п.

Так вот, если не рассматривать unsafe режим, то вычислительная модель Net, безусловно, меньше (строже) чем модель разрешающая произвольную модификацию любого участка памяти (например, x86).

А если рассматривать unsafe, то пропадает особый смысл использования Net: ну, быть может, только из-за каких-то библиотек.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Суббота, 04 Март, 2006 15:25 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9281
Откуда: Россия, Орёл
А, все понял! "Шире" = "более общее". Просто я понимал раньше Ваше "шире" = "богаче". Тогда безусловно согласен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 09 Март, 2006 06:05 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1027
Вычислительная модель x86 безусловно уже .NET-овской. Хотя бы потому, что вторая будет работать там где пасует первая.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 09 Март, 2006 10:29 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
GUEST писал(а):
Вычислительная модель x86 безусловно уже .NET-овской. Хотя бы потому, что вторая будет работать там где пасует первая.

Что-о-о?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 09 Март, 2006 12:54 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1027
Какое здесь долгое эхо однако. Что именно вас интересует, Сергей? Где не работает x86 и работает .NET?


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

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


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

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


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

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