OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 23:49

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




Начать новую тему Ответить на тему  [ Сообщений: 135 ]  На страницу Пред.  1 ... 3, 4, 5, 6, 7  След.
Автор Сообщение
СообщениеДобавлено: Суббота, 25 Июль, 2009 04:02 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
Ох, satan, интересная у Вас манера. Сначала народ дерьмом мазнуть - и тут же спрашивать совета. Ну держите:

SET - это 32-разрядное целое. Беззнаковое. С какой стороны не смотри - ничего другого там не увидишь.

SHORT и LONG не просто откидывают или добавляют информацию, но и сохраняют знак числа. А как именно это реализуется (и не только для целых, кстати)... ну кто у нас специалист по компиляторам и Дельфям? ;)

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

На этой фразе мой парсер русского языка впал в глубокий ступор. Кто на ком стоял, извините?

Кстати, по поводу размерности данных. Могли бы и потратить время на выяснение вопроса :) В оригинальном Обероне INTEGER был 16 бит, в ББ - 32 бита, в XDS это кажется можно задавать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 08:56 
Аватара пользователя

Зарегистрирован: Суббота, 12 Июль, 2008 22:49
Сообщения: 575
Откуда: Россия, Санкт-Петербург
sa_t_an писал(а):
Осталься предпоследний вопрос и последний.

Первый - а что же такое все таки SET с точки зрения Delphi. Тоесть на что он похож в представлении Делфийца.
Луче в по байтном виде. Или кучу примеров на Обероне с типом SET (просто заголовки)
И каким аналогом возможно его заменить (например массивом... и т.д.)

Я уже писал выше, что с точки зрения Deplhi SET=LONGINT. Циферки в фигурных скобках оберона set = {1, 2, 6, 9} - Это биты, которые устанавливаются. Поэтому возможны значения от 0 до 31. MaxSet = 31.

sa_t_an писал(а):
И последний вопрос (тоже по байтный) что же все таки происходит с числом(типом) от функции SHORT
Вроде если для LONGINT то было AABBCCDD а стало AABB или стало CCDD или стало BBCC
Функцию (желательно битовую) живую для обозрения.

Лучше рассматривать в двоичном виде:
старший бит - знаковый
A = 10000000.01010100.00001010.00000001 (LONGINT)
B = SHORT(A) = 10001010.00000001 (INTEGER)
C = SHORT(B) = SHORT(SHORT(A)) = 10000001 (SHORTINT)
LONG () Работает точно также, только в обратном порядке
C = 10000001 (SHORTINT)
B = LONG(C) = 10000000.00000001 (INTEGER)
A = LONG(B) = LONG(LONG(C)) = 10000000.00000000.00000000.00000001 (LONGINT)

sa_t_an писал(а):
И останется уже вопрос эффективности компилирования модулей и их загрузка. То есть как лучше сделать список импорта рекурсивно, или сразу открыть все модули и распарсить секцию IMPORT, или отслеживать изменение исходного файла и записывать время изменения в него же....

Эффективнее рассматривать рекурсивно, по мере востребованности в тексте. Потому что я могу импортировать модуль, а его содержимым не пользоваться, поэтому загружать его смысла нет.

P.S. Сейчас ализирую исходники ещё 3х кодогенераторов. Но времени катастрофически не хватает :( запарка, на работе до 22:00 сижу.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 09:37 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 327
Откуда: Ленинград, Емельянов Алексей Николаевич
По первому (предпоследнему), Пример из практики (Delphi) иллюстрирующий SET Оберона:
TBits = 0..31;
TByteSet = record
case Integer of
0: (aBits: set of TBits);
1: (aInt: Integer);
end;
(Используется для компоненты TDBCheckBoxBit, checked хранятся в битах целого числа).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 10:07 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 557
Madzi писал(а):
Я уже писал выше, что с точки зрения Deplhi SET=LONGINT.
Madzi, вы ошибаетесь.
Из учебника по Delphi - "Количество элементов, входящих в множество, может меняться в пределах от 0 до 256", скорее всего это 32 байта.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 10:38 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
Madzi писал(а):
Эффективнее рассматривать рекурсивно, по мере востребованности в тексте. Потому что я могу импортировать модуль, а его содержимым не пользоваться, поэтому загружать его смысла нет.
А если он при загрузке нужную фабрику инсталлирует?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 10:40 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
Геннадий Тышов писал(а):
Madzi писал(а):
Я уже писал выше, что с точки зрения Deplhi SET=LONGINT.
Madzi, вы ошибаетесь.
Из учебника по Delphi - "Количество элементов, входящих в множество, может меняться в пределах от 0 до 256", скорее всего это 32 байта.
При чём здесь учебник по Delphi? Мы же, вроде бы, обероновский SET рассматриваем.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 11:03 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 557
Александр Ильин писал(а):
Мы же, вроде бы, обероновский SET рассматриваем.
Возможно так. Madzd, прошу принять мои извинения.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 12:07 
Аватара пользователя

Зарегистрирован: Суббота, 12 Июль, 2008 22:49
Сообщения: 575
Откуда: Россия, Санкт-Петербург
Геннадий Тышов писал(а):
Madzi писал(а):
Я уже писал выше, что с точки зрения Deplhi SET=LONGINT.
Madzi, вы ошибаетесь.
Из учебника по Delphi - "Количество элементов, входящих в множество, может меняться в пределах от 0 до 256", скорее всего это 32 байта.

Вопрос был о том, как реализовать ОБЕРОНОВСКОЕ множество на Delphi. А в Обероне предел 31 (если брать Pow).
Про множества Delphi, я понятия не имею, поэтому не пишу об этом. Если очень инетерсно могу покопаться в справочнике по Borland pascal, о внутренней реализации (раздел для разработчиков внешних процедур).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 12:10 
Аватара пользователя

Зарегистрирован: Суббота, 12 Июль, 2008 22:49
Сообщения: 575
Откуда: Россия, Санкт-Петербург
Александр Ильин писал(а):
Madzi писал(а):
Эффективнее рассматривать рекурсивно, по мере востребованности в тексте. Потому что я могу импортировать модуль, а его содержимым не пользоваться, поэтому загружать его смысла нет.
А если он при загрузке нужную фабрику инсталлирует?

Ну, для этого достаточно проверить блок инициализации модуля, а весь модуль не грузить. SYM файлы и придумали для того, чтобы с собой не таскать лишний код (дерево и т.п.)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 25 Июль, 2009 13:21 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 1056
Иван Горячев писал(а):
SET - это 32-разрядное целое. Беззнаковое. С какой стороны не смотри - ничего другого там не увидишь.
Позволю себе не согласиться с Вами. SET -- это просто битовое поле. А числом является ORD(s), где s: SET.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 26 Июль, 2009 04:07 

Зарегистрирован: Суббота, 04 Июль, 2009 19:22
Сообщения: 45
Цитата:
Ох, satan, интересная у Вас манера. Сначала народ дерьмом мазнуть - и тут же спрашивать совета


Ну дыг программист же птица гордая... Пока пинка не даш, он не полетит. :D

Эк вас тута раззадорило пока я по баням да по девкам румяным бегал :D.

Всем спасибо за предоставленую информацию и код... Буду прорабатывать...
На счет 16-32-64 бит вынес отдельную функцию, в принципе можно будет задавать.
Скармливал компилеру sym файлы POW - кушает нормально, в обратку не пробывал, но по идее тоже все ок должон быть...

А насчет загрузки модулей... Тут уже думать буду... Среда построена таким образом, что код открытый во вкладках пере компилируется без сохранения. Вроде такой ситуации, вы написали проект. В нем есть переменная bla_bla_bla равная 1, и вдруг вам жуть как захотелось посмотреть что будет если переменной задать значение допустим 2. Так вот, зачем портить весь проект, достаточно скомпилить отдельный измененный модуль без сохранения и показать результат, а уж затем, если жуть как приспичит, и сохранить его(возможно под другим именем), а если результат не устроит, зачем же его сохранять то?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 26 Июль, 2009 11:11 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
sa_t_an писал(а):
Иван Горячев писал(а):
Ох, satan, интересная у Вас манера. Сначала народ дерьмом мазнуть - и тут же спрашивать совета
Ну дыг программист же птица гордая... Пока пинка не даш, он не полетит. :D

Эк вас тута раззадорило пока я по баням да по девкам румяным бегал :D.
Вам пока что, если не заметили, пинка никто не давал. Все слушали Ваши вопросы и отвечали на них, не смотря на Ваш стиль общения.

Либо Вы смените свой стиль общения, либо получите (на первый раз временный) бан.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 00:02 

Зарегистрирован: Суббота, 04 Июль, 2009 19:22
Сообщения: 45
Такс... Давайте я немного расскажу вам о том что происходит.

Итак, чем нормальный посетитель форума отличается от ненормального???
Нормальный посетитель приходит на форум, что то предлагает, общается или просто читает для ознакомления. Ненормальный же вносит в развитие форума какието кардинальные перестановки. Обратите внимание на Ксению Собчак. Как её не ненавидят в Рассеи с экрана её не уберут, потому как она РЕЙТИНГОВОЕ лицо. То есть лицо которое повышает рейтинг (а заодно и доход от рекламодателей).

Так вот я здесь не предлагаю и не прошу за меня что то сделать. Я пришел и ДЕЛАЮ реальное дело, причем популярность темы(рейтинг) за полмесяца возросла до первой пятерки и продолжает увеличиваться. Более того, при правильно поставленой работе и притоке на форум от 1000 посетителей, сам форум начнет приносить доход (порядка 30$ в день минимум и порядка 50-100$ за внешнюю ссылку)...

Что же я вижу?... Более тысячи постов ни о чем, почти в каждой теме вздохи-охи, ах когда же, да вот не плохо бы, а кто бы сделал... и т.д. Ну ладно, раз все вздыхают, давайте я сделаю и тут же получаю отпор. То вам ник мой не нравится, то аватар а теперь еще и стиль общения???
Девочки, давайте уже перекрасим форум из розового с пупсиком в логотипе, на нормальный, РАБОЧИЙ цвет нормального рабочего форума. Давайте станем одним рабочим организмом где глаза глядя на яйца не впадают в панику от не слишком округлого их вида! Давайте раскачаемся на конец то и выведем Оберон в разряд достойных компиляторов современности. Давайте прекратим наконец то пускать сопли и сами начнем делать стоящие (во всех отношениях) дела и поступки.

Цитата:
Либо Вы смените свой стиль общения, либо получите (на первый раз временный) бан.


Либо вы удаляете мой аккаунт и тему с форума и я больше тут не появляюсь, либо затыкаетесь и не мешаете работать!


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 00:19 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Уважаемый, давайте покультурнее.

Мы приветствуем Ваш труд.

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

Например, встроенка - это Вам не IDE (при - ещё раз - всём уважении к Вашему труду). Далее, цели данного проекта не включают доход. Далее, разводить здесь обстановку "обычного рабочего форума" тоже желающих мало.

Под "РЕАЛЬНЫМ ДЕЛОМ" здесь обычно понимают работу в своей сфере, а не просто клепание open-source-кода ради кода...

Давайте покультурнее.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 00:53 

Зарегистрирован: Суббота, 04 Июль, 2009 19:22
Сообщения: 45
Ну я не выпендриваюсь, а просто требую, что бы оставили мою индивидуальность в покое (стиль общения) или выше в топике...

А что такое встроенка?

К стати
Цитата:
компилятор just for fun
это до сих пор было, сейчас это полноценная разработка уровня Delphi (что я все время повторяюсь) или для вас такие среды это шалости студентов?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 01:13 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Шалости или не шалости - зависит от мотивации, целей и организации дела :)
У меня нет никаких предубеждений на конкретно Ваш счёт.

Встроенка - это, к примеру, программирование чего-нибудь железного, что летает или ездит.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 01:31 

Зарегистрирован: Суббота, 04 Июль, 2009 19:22
Сообщения: 45
О... Я слышал о разработках такого плана, в принципе со слухов что на Обероне и Аде разрабатывается ПО для космических программ и появилась моя заинтересованость Обероном... Только опять не понятно что такое 'более серьезная работа'. Для меня например более серьезным будет то, что я делаю для того, на чем вы и будете делать более серьёзную работу, более комфортно... Для вас - естественно ваши работы, но сравнение тут наверное просто не годится. Для меня вообще серьезная работа - это работа, а не серьёзная это разговоры о работе вот и все...

Как пример для меня равнозначные разработка компьютера, процессора и компилятора CAML для этого процессора и создание Menuet OS. А вот идею форумчанина с ником СЫЙ (форум по русскоязычным средствам разработки) о русификации всего мира я просто считаю бредом, хотя его энергии достаточно что бы вывести любую разработку на высший уровень. Но проподает талант :D.

Да вообще ладно, тут речь не об этом а о целях...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 01:39 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
sa_t_an писал(а):
Для меня например более серьезным будет то, что я делаю для того, на чем вы и будете делать более серьёзную работу, более комфортно...


Да, инструментарий - "дело благородное" :)

Правда, мой коллектив не работает на Обероне-2. И Блэкбокс нас устраивает более, чем что бы то ни было. Точнее, правильнее говорить "наша среда Блэкбокс", потому что Блэкбокс у каждого может становиться тем, чем ему нужно... Delphi, IDE etc. уже как отзвук из далёкого прошлого :) Даже на ностальгию прошибло. Не подумайте, что издёвка - это так, к слову :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 01:59 

Зарегистрирован: Суббота, 04 Июль, 2009 19:22
Сообщения: 45
Цитата:
Да, инструментарий - "дело благородное"
Но не благодарное... эт я знаю.

Ничего не имею против ББ. Одно но... Напрягают меня интерпретирующие компиляторы... Visual Basic наверно и оставил осадок... Так же и с ББ и с AOS и с JAVA все время приходится таскать с собой не нужный груз...
А еще неудобный интерфейс. Люди привыкают к интерфейсам. Поэтому в Линуксе, Маке и Виндовс как бы придерживаются норм, а в ББ как бы забивают иксы на скажем так рядового пользователя. Поэтому у меня возникают противоречивые чуства при виде разработки ББ (как среды). Причем мнение мое крайне негативно как пользователя и отношению разработчиков ко мне как к пользователю. Но совсем другие чувства как к компилятору и т.д. и т.п. Поэтому тут даже спорить не имеет смысла.

К стати переписать ББ если есть исходники дело 2-4 недель, ну максимум 1.5 месяцев.
Поэтому и выбран был Оберон-2 как промежуточный, поэтому и выбраны были Delphi/FreePascal как с огромным сообществом.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 27 Июль, 2009 02:19 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
sa_t_an писал(а):
А еще неудобный интерфейс. Люди привыкают к интерфейсам. Поэтому в Линуксе, Маке и Виндовс как бы придерживаются норм, а в ББ как бы забивают иксы на скажем так рядового пользователя. Поэтому у меня возникают противоречивые чуства при виде разработки ББ (как среды).


Есть принципы построения удобных интерфейсов. Например, классика в этом отношении - книга Раскина (соавтор ряда Applовских машин) "Интерфейс".

Если речь идёт об интерфейсе повседневного рабочего места (в отличие от программ для эпизодического пользования, где нужно попользоваться один раз, но сразу и быстро), то основная задача - обеспечить наибольшее удобство работы после освоения системы. Задача облегчения работы в первые два дня ("люди привыкают к интерфейсам..") обычно противоречит задаче достижения наибольшей эффективности труда потом. Эргономика - это не кнопочки таскать, это целая наука :)


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

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


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

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


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

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