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

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

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


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

Архив

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


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

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

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

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

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

 
   
С Л С

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

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

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

Квинтана

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

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

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

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

 
  
АРХИВЫ

 
 

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


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

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

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

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


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

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

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

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

<<<... | 1376—1367 | 1366—1357 | 1356—1347 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 490


№ 1366   28-12-2006 03:25 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1361« (Jean)
___________________________

Хотите обсудить тему сложности? Давайте.
Про 30 страниц описания языка (Оберона, конечно) помолчим. А то и обсуждать будет нечего :)


Учитывая отсутствие стандартной библиотеки (которая могла бы входить в описание языка, как у всех нормальных языков) обсуждать действительно нечего.


"маленькой" табличкой и всего 25 вариантами задания атрибутов private, public и protected:


Про это я уже говорил - обучению не мешает. А выразить точнее мысль позволяет.


№ 1365   28-12-2006 03:22 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1353« (pepper)
___________________________


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

Что ты подразумаеваешь под "усложнением языка" я не очень понял. Очень простые языки (если сравнивать с каким-нибудь C++).


ИМХО, из всего этого внимания заслуживают только дженерики (появившиеся в этих языках далеко не сразу).
Что касается механизма исключений, его можно реализовать и вне языка (за счет рантайма), пользуясь рефлексивностью Оберона, причем это более эффективное решение.
Насчет делегатов. В Обероне существуют процедурные переменные.
Что касается перегрузки операторов, вопрос в том, хорошо это или плохо.
В Oberon-X (и следовательно в Native Oberon) есть перегрузка операторов (есть также версии Оберона с поддержкой шаблонов и исключений).
По Си++ному опыту могу сказать, что это иногда приводит к труднонаходимым ошибкам.
Какие именно элементы функционального программирования в шарпе кажутся Вам жизненно важыми?

Я не сравнивал эти языки с Си++. Я сравнивал их с Обероном. :)
 AVC


№ 1364   28-12-2006 03:20 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1359« (Илья Ермаков)
___________________________

Ответ на »сообщение 1351« (pepper)
BlackBox состоит из нескольких тысяч модулей.


Я насчитал только порядка 700 (.odc), но не важно, все равно достаточно много.


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


Такая градация, как я понимаю, инициатива конкретно BlackBox и его компилятор как-то поддерживает это? Очень показательно. А если мне нужно более глубокое раздление на подсистемы?


№ 1363   28-12-2006 03:20 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1360« (pepper)
___________________________

Ответ на »сообщение 1357« (Илья Ермаков)
___________________________

Ответ на »сообщение 1331« (pepper)
___________________________
Давайте не путать. Smalltalk - интерпретируемый язык, правда, со сложным механизмом JIT-предкомпиляции, но не 100%. Java, в целом, тоже. Выполнить такие штуки на нативном компиляторе жабы было бы невозможно.


Тем хуже для компилирующей среды. Т.е., выгружать модули в джаве/C# просто не надо. Почему это рассматривается как недостаток?

Покажите мне аналог BlackBox под .NET. Я там увидел только классическую среду, работающую по принципу "пишем в Студии, компилируем, запускаем как отдельное приложение, возвращаемся в Студию, исправляем, компилируем, перезапускаем" и т.п.
Напишите на Шарпе модель составных документов BlackBox - открыли документ, для всех внедренных графических объектов подгрузились реализующие модули, динамически связались с пользовательским интерфейсом. И чтобы их можно было после этого выгрузить.


№ 1362   28-12-2006 03:17 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1358« (pepper)
___________________________
Если вас интересует пример массовый продукт на Обероне, то есть и такие. Например, в этом году вышла мультимедиа-энциклопедия на нашем движке, сделанном на BlackBox. Никакого дерьма вроде HTML, Java, Flash и т.п. - только интерактивные составные документы BlackBox. Поэтому работает крайне быстро.
http://djone.ru.
Java, реализованная на Обероне - вещь обыденная. OS JBed, JIT-компилятор для Borland JBuilder, написанный по заказу Borland на BlackBox, Excelsior Java (http://excelsior-usa.com), ну и т.п.


№ 1361   28-12-2006 03:16 Ответить на это сообщение Ответить на это сообщение с цитированием
Хотите обсудить тему сложности? Давайте.
Про 30 страниц описания языка (Оберона, конечно) помолчим. А то и обсуждать будет нечего :)
Другой пример. Ява язык простой :) Правила доступа регулируются вот такой "маленькой" табличкой и всего 25 вариантами задания атрибутов private, public и protected:

Атрибут: private, public, protected, private protected, Нет атрибута;
1) Этот же класс: да, да, да, да, да;
2) Подкласс в этом же пакете: нет, да, да, да, да;
3) Независимый класс в этом же пакете: нет, да, да, нет, да;
4) Подкласс в другом пакете: нет, да, да, да, нет;
5) Независимый класс в другом пакете: нет, да, нет, нет, нет;

А вот решение той же проблемы в Оберонах.

Атрибут: Атрибут *, Атрибут -, Нет атрибута
1) Этот же модуль: полный доступ, полный доступ, полный доступ;
2) Другой модуль: полный доступ, только для чтения, нет доступа;

В чем будем мерять сложность?



№ 1360   28-12-2006 03:11 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1357« (Илья Ермаков)
___________________________

Ответ на »сообщение 1331« (pepper)
___________________________
Давайте не путать. Smalltalk - интерпретируемый язык, правда, со сложным механизмом JIT-предкомпиляции, но не 100%. Java, в целом, тоже. Выполнить такие штуки на нативном компиляторе жабы было бы невозможно.


Тем хуже для компилирующей среды. Т.е., выгружать модули в джаве/C# просто не надо. Почему это рассматривается как недостаток?


№ 1359   28-12-2006 03:09 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1351« (pepper)
___________________________

Ответ на »сообщение 1348« (Jean)
___________________________

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


Всего лишь несколько тысяч файлов. Пространства имен рулят.

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


№ 1358   28-12-2006 03:06 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1354« (Jean)
___________________________

>>>Всего лишь несколько тысяч файлов. Пространства
>>>имен рулят
Хотите верьте, хотите нет, но проекты на Оберонах рулят не хуже и без этой примочки.


Где они, эти проекты? На sf.net всего несколько (!) проектов (компиляторы и что-то типа test suit). Все остальное спрятано и, видимо, доступно только избранным.


№ 1357   28-12-2006 03:04 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1331« (pepper)
___________________________

Ответ на »сообщение 1329« (Илья Ермаков)
___________________________

Ответ на »сообщение 1325« ()
___________________________
Откомпилировали, тут же загрузили, интегрировали в среду, потестировали, выгрузили, исправили, загрузили снова.

Посмотри на IDEA (IDE для жабы такая). Я не представляю как сделать то, что она вытворяет, без той динамики, о которой ты говоришь. Как именно она это делает - никогда не копал, так как не надо было. А еще есть Smalltalk (который был до всяких оберонов), который тоже ориентирован на такой подход к разработке.

P.S. Почему то, что ты описал, невозможно без явной выгрузки модулей, я так и не понял.

Давайте не путать. Smalltalk - интерпретируемый язык, правда, со сложным механизмом JIT-предкомпиляции, но не 100%. Java, в целом, тоже. Выполнить такие штуки на нативном компиляторе жабы было бы невозможно.
Причем тут явная выгрузка - при том, что если я не могу выгрузить модуль (в компилирующей среде, подчеркну еше раз), который тестирую, то как я загружу его новую версию после исправлений и перекомпиляции? Правильный ответ - никак. Перезапустить приложение.


<<<... | 1376—1367 | 1366—1357 | 1356—1347 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 490


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

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

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

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

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

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