Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Сб ноя 08, 2025 02:09

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 41 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вс июл 08, 2007 18:25 
Не в сети

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
названия функций - лисповые
cdr car
а зачем нужно - не пойму

то функции работы с "надстраиваемыми" списками, т.е. списками, где "добавляется" В ГОЛОВУ ПО ЭЛЕМЕНТУ, А всё остальное - хвост :o

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс июл 08, 2007 18:55 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5063
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
вообще приводить такой код в качестве аргумента совсем не корректно. Собственно вообще бесполезно 8(
вопрос писал(а):
названия функций - лисповые
cdr car
а зачем нужно - не пойму

в том-то и дело, толку от куска кода совсем нету. Понять что-то можно, но для этого нужно разбираться, причем достаточно долго, так как объем достаточно не маленький. Название s-expressions ничего не говорит 8(


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс июл 08, 2007 21:15 
Не в сети

Зарегистрирован: Сб янв 27, 2007 22:00
Сообщения: 106
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
mOleg писал(а):
Очень интересно - а что это такое?
Ни тебе для чего, ни тебе как?

Это списки а ля Лисп со специализированным сборщиком мусора.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс июл 08, 2007 21:20 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5063
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
yz писал(а):
Это списки а ля Лисп со специализированным сборщиком мусора.

прекрасно, но все-таки не хватает ни коментариев, ни примеров применения, ни описания.
Толку от выкладывания такого кода очень мало 8( в нем надобно копаться, чтобы разобраться. То есть он применим только для того, кто его писал.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн июл 09, 2007 10:56 
---


Последний раз редактировалось profiT Сб мар 01, 2008 00:49, всего редактировалось 1 раз.

Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн июл 09, 2007 20:36 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5063
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
profiT писал(а):
Предскриптум. Ох, такое ощущение что я тут бисер мечу.

да нет, просто почему-то твои высказывания черезчур в последнее время категоричны 8(

profiT писал(а):
Если 5Кб, да ещё в условиях дефицита другого осмысленного материала в теме (кроме первых ссылок вначале) -- это "много", то я тогда не знаю.

Разбирать программу на форте как всегда надо с конца, с главной процедуры (если есть она) или с примеров использования. В данном случае примеры -- есть (есть!..), смотрим их:

тут главное слово разбирать программу надо!
Интересно, что ты сам не так давно говорил другое - что в либах разбираться не надо, а надо просто ими пользоваться 8)

но дело даже не в этом, нету ни одной строчки с пояснением, что же это такое и как этим пользоваться в самой либе.
нету ни одного коментария ни к одному слову 8(
А 5кб текста для форта не так уж и мало, кстати, текст не открывается сейчас!?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн июл 09, 2007 20:51 
---


Последний раз редактировалось profiT Сб мар 01, 2008 00:49, всего редактировалось 1 раз.

Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн июл 09, 2007 21:26 
Не в сети

Зарегистрирован: Сб янв 27, 2007 22:00
Сообщения: 106
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
profiT писал(а):
Замечание 4: я никогда до этого момента не встречался с и не изучал алгоритмы сборки мусора. Хотя, примерное моё представление о том как это делается совпало с реализованным здесь mark and sweep.

Сейчас простой mark & sweep считается уже устаревшим. Обычно делается вариация на тему "трех цветов". Хороший обзор есть в Википедии.

Это не для критики, а в порядке обмена опытом.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн июл 09, 2007 21:32 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5063
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
profiT писал(а):
Quod Erat Demonstrandum. Так и есть -- мечу бисер. Я понимаю что у каждого своя реальность, но конкретно это вот был не я, а голем составленный из полнейшего непонимания и искажения практически любых сказанных слов.

да нет, просто речь шла о другом - что не стоит выкладывать код, в котором надо разбираться 8) потому как толку от такого нету никакого.
Ведь код приведен для иллюстрации реализации идеи, а не для того, чтобы в нем РАЗБИРАЛИСЬ серьезно - не так ли?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт июл 27, 2007 20:06 
yz писал(а):
profiT писал(а):
Замечание 4: я никогда до этого момента не встречался с и не изучал алгоритмы сборки мусора. Хотя, примерное моё представление о том как это делается совпало с реализованным здесь mark and sweep.

Сейчас простой mark & sweep считается уже устаревшим. Обычно делается вариация на тему "трех цветов". Хороший обзор есть в Википедии.

Это не для критики, а в порядке обмена опытом.


Спасибо за информацию об алгоритме Дейкстры! Вобще говоря, ни один из алгоритмов gc не может являться панацеей. Сперва нужно исследовать, в каких конкретных условиях он будет использоваться. Например, готовы ли мы смириться с тем, что каждое обращение к распределителю памяти повлечет за собой некоторые накладные расходы, какая степень интерактивности всей системы нас бы устроила... и тд. Стековая модель Форта вобще располагает к нетрививальным решениям в этой области(см. home(dot)pipeline(dot)com/~hbaker1/ForthStack.html). На мой взгляд, тут есть еще пространство для исследований.

Кстати говоря, я оформил свою работу в виде статьи. Сборщик мусора в ней средство, а не цель, по этому выбран был самый простой и надежный вариант.

storage9(dot)myopera(dot)com/true-grue/files/forth-fp.html

Буду рад отзывам!


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Сборка мусора на Форте
СообщениеДобавлено: Пн июн 23, 2025 12:51 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1325
Благодарил (а): 4 раз.
Поблагодарили: 20 раз.
Не знаю, может быть будет кому-то полезна эта идея.

Как работает сборщик:
1. Указатель на хип всегда помещается на стек возвратов.
2. Указатель на хип и указатель на ячейку в стеке возвратов, где хранится указатель на хип (*heap, **heap), передаются в поток.
3. Если указатель пропадает из выделенной ячейки на стеке возвратов, то поток освобождает память.

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

_________________
Цель: сделать 64-битную Нову под Винду


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

Часовой пояс: UTC + 3 часа [ Летнее время ]


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

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


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

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB