OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 08 Декабрь, 2024 22:46

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




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Lists
СообщениеДобавлено: Суббота, 24 Октябрь, 2009 16:32 

Зарегистрирован: Пятница, 16 Октябрь, 2009 20:04
Сообщения: 68
При компиляции многих модулей столкнулся с тем, что отсутствует библиотека Lists. Где взять? (ББ 1.5).

(модератор) 19.01.2011 размещено в коллекции: http://oberoncore.ru/bbcc/subs/lists/start


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Где взять?
СообщениеДобавлено: Суббота, 24 Октябрь, 2009 20:05 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Это самописная библиотека. Её пока нет в коллекциях компонентов, поэтому прикладываю Lists.7z к этому сообщению.
вложение удалено модератором


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Где взять?
СообщениеДобавлено: Суббота, 24 Октябрь, 2009 22:06 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Доровских Александр писал(а):
При компиляции многих модулей ...
Каких? Первый раз про Lists слышу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Где взять?
СообщениеДобавлено: Воскресенье, 25 Октябрь, 2009 01:17 

Зарегистрирован: Пятница, 16 Октябрь, 2009 20:04
Сообщения: 68
Stern например. И в других модулях встречается. Ивану Кузьмицкому Гран мерси :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Где взять библиотеку Lists?
СообщениеДобавлено: Воскресенье, 25 Октябрь, 2009 11:20 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Подсистема простейшая. была создана вместо множества повторяющихся модулей.
Всем привет из стройных рядов ВВ МВД :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Где взять библиотеку Lists?
СообщениеДобавлено: Воскресенье, 25 Октябрь, 2009 13:40 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Пётр Кушнир писал(а):
Подсистема простейшая. была создана вместо множества повторяющихся модулей.
Любопытно.
У меня все списки либо не вписываются в эти схемы, либо проще настолько, что тащить такую подсистему -- избыточная сложность :)

А вот такое наследование, по-моему, ошибка архитектора:
Iterator = POINTER TO LIMITED RECORD (IteratorItem)

Пётр Кушнир писал(а):
Всем привет из стройных рядов ВВ МВД :)
Тоже любопытно. Это как -- почетный долг или просто работа такая? :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Где взять библиотеку Lists?
СообщениеДобавлено: Воскресенье, 25 Октябрь, 2009 16:33 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Не помню, даже, зачем я ввел такое наследование.

А в ВВ я в данный момент прохожу срочную службу. Как то так.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Где взять библиотеку Lists?
СообщениеДобавлено: Четверг, 21 Январь, 2010 03:59 

Зарегистрирован: Вторник, 05 Январь, 2010 21:31
Сообщения: 1100
Откуда: Харків, Данилівка
Цитата:
Любопытно.
У меня все списки либо не вписываются в эти схемы, либо проще настолько, что тащить такую подсистему -- избыточная сложность

Ага, ну наконец-то! И "поинтер ту" при нем)))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Где взять библиотеку Lists?
СообщениеДобавлено: Четверг, 21 Январь, 2010 11:57 
Модератор
Аватара пользователя

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


А Вы что хотели? Отношение - оно и в Африке отношение, орграф он и в Африке орграф :) И пойнтер ту при нём, как конкретная модель на машине.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Lists
СообщениеДобавлено: Понедельник, 24 Декабрь, 2018 00:04 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1612
Скачал архив с текущим выпуском. Посмотрел исходный текст. Не 100% уверен, но всё же мне кажется, что при уменьшении размера списка хвост не обнуляется. Поэтому живущие в списке объекты не будут освобождены сборщиком мусора, до тех пор пока не случится одно из двух:

а) сам список будет удалён
б) список обратно вырастет и эти элементы будут заменены чем-то другим

На мой взгляд, это является утечкой памяти. Если это так задумано, то об этом стоило бы написать в документации.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Lists
СообщениеДобавлено: Четверг, 29 Октябрь, 2020 18:03 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3806
На всякий случай кидаю тут ссылку:
https://blackbox.oberon.org/extension/Lists


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Lists
СообщениеДобавлено: Среда, 08 Ноябрь, 2023 23:54 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3806
Просто пример, который делал для чата.

Код:
MODULE ListsObxOp;

   IMPORT ListsOp, Rnd := ObxRandom, Log;

   TYPE
      MyData = POINTER TO RECORD
         x: INTEGER
      END;

      MyAddOp = RECORD (ListsOp.AddOp)
         this*: MyData
      END;

      MyForEachOp = RECORD (ListsOp.ForEachOp)
         this*: MyData
      END;

   PROCEDURE (VAR op: MyForEachOp) Do (OUT break: BOOLEAN);
   BEGIN
      Log.Int(op.this.x); Log.Ln;
   END Do;

   PROCEDURE Test*;
      VAR
         i: INTEGER;
         list: ListsOp.List;
         addOperation: MyAddOp;
         forEachOperation: MyForEachOp;
   BEGIN
      list := ListsOp.New();
      i := 0;
      WHILE i < 10 DO
         NEW(addOperation.this);
         addOperation.this.x := SHORT(ENTIER(Rnd.Uniform() * 5000));
         list.Do(addOperation);
         INC(i);
      END;
      list.Do(forEachOperation)
   END Test;

END ListsObxOp.

 ListsObxOp.Test


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

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


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

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


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

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