Main page




[00:02] Kamikaze13 (^51a9e53d@ircgate.deware.lo) left irc: "CGI::IRC [irc.run.net]"
[00:02] Kamikaze13 (^51a9931b@ircgate.deware.lo) joined #forth.
[01:11] Kamikaze13 (^51a9931b@ircgate.deware.lo) left irc: "CGI::IRC [irc.run.net] (EOF)"
[01:16] Нирвана (~WingLion@81.211.122.120) left irc: "Моя ушло, но моя еще вернется! Когда-нибудь..."
[06:02] mrack (~gl0@88.151.111.167) joined #forth.
[06:06] RHuB (~RHuB@gw.tis.tomsk.ru) joined #forth.
[06:07] [RHuB] доброе утро
[06:14] [mrack] доброе
[06:41] mrack (~gl0@88.151.111.167) got netsplit.
[06:42] mrack (~gl0@88.151.111.167) returned to #forth.
[07:13] RHuB (~RHuB@gw.tis.tomsk.ru) left irc: ""
[07:13] choo (~Miranda@194.126.169.55) joined #forth.
[07:14] [choo] re
[07:17] RHuB (~RHuB@gw.tis.tomsk.ru) joined #forth.
[08:23] gl0 (~gl0@88.151.110.16) joined #forth.
[08:23] Nick change: gl0 -> ктулх
[08:24] mrack (~gl0@88.151.111.167) left irc: Ping timeout
[09:41] ктулх (~gl0@88.151.110.16) left irc: "реморфинг трансформинга трансциндентного восприятия"
[10:21] mrack (~gl0@88.151.110.16) joined #forth.
[12:23] gl0 (~gl0@88.151.110.38) joined #forth.
[12:24] mrack (~gl0@88.151.110.16) left irc: Ping timeout
[12:26] Nick change: gl0 -> Держиморда
[13:11] Держиморда (~gl0@88.151.110.38) left irc: "реморфинг трансформинга трансциндентного восприятия"
[14:34] mrack (~gl0@88.151.110.38) joined #forth.
[14:46] choo (~Miranda@194.126.169.55) left irc: Connection reset by peer
[14:59] RHuB (~RHuB@gw.tis.tomsk.ru) left irc: ""
[15:11] mrack (~gl0@88.151.110.38) left irc: "реморфинг трансформинга трансциндентного восприятия"
[15:51] profit1984 (^azekeProf@82.200.252.37) joined #forth.
[16:51] profit1984 (^azekeProf@82.200.252.37) left irc: Connection reset by peer
[18:16] mOleg (^52cf52bc@ircgate.deware.lo) joined #forth.
[19:01] mOleg (^52cf52bc@ircgate.deware.lo) left irc: "CGI::IRC [irc.run.net] (Ping timeout)"
[19:06] mrack (~gl0_@88.151.110.41) joined #forth.
[19:13] mOleg (^52cf52bc@ircgate.deware.lo) joined #forth.
[19:14] [mOleg] Трям!
[19:17] Xищник (^c2ba8b14@ircgate.deware.lo) joined #forth.
[19:17] [mOleg] осторожный привет хищнику!
[19:18] [Xищник] почему осторожный?
[19:18] [mOleg] а кто вас, хищных знает?
[19:18] [mOleg] Ж8)
[19:18] [mOleg] смелым быть опасно!
[19:19] [mOleg] у нас тут в зоопарке девочка решила медведю конфетку протянуть...
[19:19] [mOleg] медведь скушал конфетку с рукой...
[19:21] profit1984 (^azekeProf@82.200.252.37) joined #forth.
[19:21] [Xищник] неправильный медведь...
[19:21] [mOleg] народ начинает подтягиваться 8)
[19:21] [mOleg] привет, profit!
[19:21] [mOleg] да нет, девочка неправильная
[19:21] [profit1984] Сколько раз нужно подтянутся?..
[19:21] [mOleg] а медведь обычный
[19:21] [mOleg] не сколько! а скольким 8)))
[19:22] [Xищник] ну, собственно, протяните мне что-нибудь на пробу! :)
[19:22] [mOleg] нет уж! дудки
[19:23] [Xищник] дудки мне не надо, они невкусные :)
[19:24] [profit1984] Нет, почему.. Есть же земляничная дудочка.. Которую старичок-боровичок дал..
[19:26] *** profit1984 радуется: второй день подряд в чате дружно несут бред.
[19:26] [mOleg] а разве хищники сладкое едят?
[19:26] [profit1984] Смотрите, не уроните.
[19:26] [profit1984] А медведь не хищник разве?
[19:26] [mOleg] кстати, а где логи? за вчера?
[19:26] [mOleg] вообще медведь всеядное, как свинья или человек
[19:26] [mOleg] а это пострашнее хищника будет
[19:26] [mOleg] ...
[19:26] [Xищник] ой, а куда несут бред?
[19:26] [profit1984] Медьведь -- это мясоядный вегетерианец! Во.
[19:26] [profit1984] Бред видимо медведю несут.
[19:26] [mOleg] 8) да, кушает конфетки с руками
[19:27] [Xищник] тогда он медбред
[19:27] [profit1984] Чтобы он съел. Он же всеядный.
[19:27] [Xищник] или бредвед
[19:27] [mOleg] не разбираясь где что
[19:27] [profit1984] Не тогда медбрат.
[19:28] [profit1984] И вообще: мы неправильные пчёлы. И несём неправильный бред.
[19:28] [mOleg] ну, и какие у нас новости?
[19:29] [profit1984] А бред уже перенесли?.. Или кто то не вынес?
[19:31] [mOleg] вред уже принесли
[19:31] [profit1984] Новости не новые. Всё по старому.
[19:31] [mOleg] а бред еще несут
[19:31] *** Xищник на прошлой неделе закончил партию приборчиков на новом форт-процессоре
[19:31] [profit1984] Добейте его (бред), чтоб уж не мучался.
[19:31] [mOleg] а на форт-орг у тебя куча просто обновлений
[19:31] [profit1984] И ещё сегодня надо..
[19:31] [mOleg] !осторожно поздравляю хищника!
[19:31] [Xищник] :)))
[19:31] [Xищник] ну вот, теперь все будет осторожно... :)
[19:31] [mOleg] абязательна
[19:32] [mOleg] на форуме что-то опять затишье
[19:32] [Xищник] и форт побери, работать с ним понравилось!
[19:33] [mOleg] с приборчиком?
[19:33] [Xищник] с процессором
[19:34] [mOleg] что-то новое добавилось?
[19:34] [Xищник] IDE
[19:34] [Xищник] а в ядро - собственно, тоже. 32 разряда, стек циклов аппаратный, аппаратные же исключения
[19:36] [Xищник] загрузка по USB и работа с ним - очччень приятно
[19:36] [mOleg] сколько ячеек занял
[19:36] [Xищник] ПЛИС побольше - стало 12 к кода
[19:36] [Xищник] ячеек мало. в районе 1200, это характерный показатель для 32 разрядов
[19:37] [Xищник] к нему сопроцессор на 128 бит :)
[19:37] [mOleg] Забыл, у какого 32 битного форт-процессора 7000 транзисторов?
[19:37] [Xищник] видимо, у хардварного
[19:38] [mOleg] да, вот только забыл у какого
[19:39] [mOleg] ну да ладно, я до своего SPartan-а еще не добрался
[19:39] [mOleg] ибо сильно закопался в спф
[19:43] [mOleg] ..
[19:44] [Xищник] собственно, в 7000 транзисторов можно уложить основные структуры, но не стек
[19:44] [Xищник] а аппаратный накристальный стек - самая вкусная особенность форт-процессора
[19:46] [mOleg] во-первых, стек обычно очень маленький, ладно надо на страничку к Чепрыженко сходить
[19:46] [mOleg] а сколько у тебя стеки ячеек занимают?
[19:46] [Xищник] маленький - это сколько?
[19:46] [mOleg] или ты блочную память пользуешь?
[19:46] [mOleg] 8
[19:46] [Xищник] меньше 100
[19:46] [Xищник] можно и блочную
[19:46] [Xищник] но 32 ячейки стека вполне достаточны для подавляющего большинства "приборных" нужд
[19:46] true-grue (~xyyyyzy@89-178-1-5.broadband.corbina.ru) joined #forth.
[19:47] [mOleg] трям!"
[19:47] [true-grue] mOleg, Хищник, трям-рры! :)
[19:47] [Xищник] вобщем, трррым! :)
[19:48] [true-grue] ррям!
[19:48] [true-grue] Угадайте, кто это написал: Сплошная оптимизация - оптимизация на основе построения и последующего грамматического разбора результитрующей семантики определений. ;)
[19:48] [mOleg] что кого где?
[19:49] [true-grue] mOleg, В форуме :)
[19:49] *** Xищник молчит, потому что видел :)
[19:49] [mOleg] еще не видел
[19:49] [mOleg] щас схожу
[19:52] [mOleg] я не увидел 8[ о чем речь?
[19:54] [mOleg] в какой теме?
[19:54] [mOleg] true-grue?
[19:54] [true-grue] http://fforum.winglion.ru/viewtopic.php?t=453
[19:56] [mOleg] понял
[19:56] [mOleg] и?
[19:56] [profit1984] Так. Я тут слежу за трагедией экипажа "Ностромо" поэтому часов пару меня не будет.
[19:56] [Xищник] трагедия на пару часов - это комедия! :)))
[19:56] [profit1984] Но true-grue хочу кинуть ссылку на ещё одну ретро-игрулю: http://worldofstuart.excellentcontent.com/grid/wars.htm
[19:56] [profit1984] Про Grid Wars 2
[19:57] [mOleg] а що це таке?
[19:57] [profit1984] И ещё один раз хочу всячески отрекомендовать Darwinia.
[19:57] [true-grue] mOleg, Да ничего. Наверное, сейчас так принято излагать свои мысли. А я отстал от жизни и отупел. "Кто ясно мыслит -- ясно излагает". Я преклоняюсь перед способностью ясно и просто говорить о сложном. Вот, Броуди, скажем, обладает таким даром :)
[19:57] [profit1984] Всё я ушёл. На планетоид.
[19:57] [true-grue] profit1984, Спасибо, посмотрю!
[19:58] [mOleg] просто меня вопросы оптимизации обычно не волнуют
[19:58] [mOleg] вообще пример на форуме, я о подсчете кол-ва бит
[19:59] [mOleg] очень хорошо проиллюстрировал зависимость скорости в первую очередь от выбранного алгоритма 8)
[19:59] [mOleg] а не от оптимизации на уровне ассеблера
[19:59] *** Xищник может сделать подсчет числа бит и за 32 такта... или меньше :)
[19:59] [Xищник] на соответствующем чипе, конечно
[20:01] [mOleg] на конвеере?
[20:01] [Xищник] да, последовательным сдвигом
[20:01] [mOleg] гы, так можно и за один такт
[20:01] [Xищник] а можно по 2 бита за такт анализировать
[20:01] [mOleg] на соответствующем железе
[20:01] [true-grue] Хищник, А мне бы хотелось делать НОД за такт :)
[20:01] [Xищник] ну если аппаратные затраты совершенно не волнуют...
[20:01] [Xищник] с делением всегда проблемы :)
[20:01] [mOleg] зависит от разрядности!
[20:01] [mOleg] например для 8-и бытных значений не проблема и за такт
[20:01] Нирвана (~WingLion@81.211.122.120) joined #forth.
[20:01] #forth: mode change '+o Нирвана' by ChanServ!service@RusNet
[20:01] [mOleg] а уж для 4-х битных и подавно
[20:02] [Нирвана] ЗдрАААвствуйте!
[20:02] [mOleg] здрасте!
[20:02] [true-grue] mOleg, Ага, еще и коммутативность помогает
[20:02] [mOleg] я через 10 минут вернусь
[20:02] [mOleg] у меня спутник
[20:06] [Xищник] что, спутник пролетает над головой и надо пригнуться? :)
[20:16] [mOleg] не, напрячься надо
[20:16] [mOleg] было
[20:16] [mOleg] уже пролетел
[20:16] [mOleg] их сегодня что-то очень много летит
[20:24] Xищник (^c2ba8b14@ircgate.deware.lo) left irc: "CGI::IRC [irc.run.net] (EOF)"
[20:31] [mOleg] ..
[20:34] [Нирвана] может, это просто китайские обломки летят? А то, был слух, что китайцы что-то там раздолбали на орбите
[20:34] [mOleg] не, мы занимаемся очень хорошо известными спутниками
[20:34] [mOleg] ну вот, еще один летит
[20:39] [Нирвана] а МКС видно? или широта не позволяет?
[20:43] [mOleg] не, МКС не интересно
[20:43] [mOleg] во-первых нельзя народ слепить
[20:43] [mOleg] а во-вторых нету на мкс-е уголковых отражателей
[20:44] [Нирвана] упс... :-))
[20:44] [mOleg] и в третьих он очень часто маневрирует и для решения геодинамических задач ценности не имеет
[20:44] [mOleg] а у нас такие спутники. которые по 5-7 МЛН лет летать будут и очень стабильно
[20:44] [mOleg] 8)
[20:46] [mOleg] по-крайней мере самые важные
[20:46] [Нирвана] если китайцы не собьют? :)
[20:46] [mOleg] неа, не собьют
[20:46] [mOleg] они-ж свой сбили
[20:46] profit1984 (^azekeProf@82.200.252.37) left irc: Connection reset by peer
[20:46] [mOleg] мы и по китайским, кстати стреляем
[20:46] [mOleg] летает там одни шарик под названием ajisai куча зеркал и уголковых отражателей на борту
[20:47] [Нирвана] это все в "научных" целях? :)
[20:47] [mOleg] да как сказать
[20:47] [mOleg] трудно разделить научные цели от ненаучных?
[20:48] [mOleg] то есть по какому критерию разделять?
[20:48] [Нирвана] понятно...
[20:48] *** Нирвана чует, что уже залез в область ДСП, если не дальше...
[20:48] [mOleg] 8)
[20:49] [mOleg] кстати запуск на орбиту аппарата на столько дорогой, что нагружают любой аппарат по максимуму
[20:49] [mOleg] а потом даже вроде мирные спутники связи в случае войны начинают на кого работать??? как вы думаете?
[20:51] [Нирвана] на китайцеф?? :-( )
[20:51] [mOleg] 8) военных, а уж чьих - это другой вопрос
[21:06] Нирвана (~WingLion@81.211.122.120) left irc: "Моя ушло, но моя еще вернется! Когда-нибудь..."
[21:22] mrack (~gl0_@88.151.110.41) left irc: "по причине: любая тупая банальность на ваш выбор "
[21:23] profit1984 (^azekeProf@82.200.252.37) joined #forth.
[21:24] Kamikaze13 (^51a9e53d@ircgate.deware.lo) joined #forth.
[21:24] [profit1984] Эх.. Жалко зверушку... Злая Рипли сгубила..
[21:26] [mOleg] да Рипли вообще в гринпис не вписывается
[21:26] [Kamikaze13] hi!
[21:26] [mOleg] привет!
[21:26] [profit1984] Угу.. Если в фильме самый "зелёный" и всех-форм-жизни-любитель вообще неживой робот, то что уж тут...
[21:26] [Kamikaze13] Вопрос: что должен показывать дизассемблер на форт-программах?
[21:27] [profit1984] Дизассемблер должен показывать дизассемблированный код.
[21:27] [profit1984] Он и показывает.
[21:28] [profit1984] http://spf.sourceforge.net/docs/intro.ru.html#start
[21:28] [profit1984] SPF - форт-система с подпрограммным шитым кодом, то есть компиляция проходит сразу в исполняемый код в виде цепочек CALL <адрес-cfa-слова>. Этот код можно запускать и непосредственно, но в системе по-умолчанию есть ещё и оптимизатор, который обрабатывает машкод для большего быстродействия, выполняя inline-подстановку и peephole-оптимизацию. Подробнее на ForthWiki: "Оптимизирующий компилятор".
[21:29] [Kamikaze13] Нда? А у меня Ида выдала две процедуры и кучу нераспознанных данных. И в Оле та же @@@ почти
[21:29] [profit1984] Под дизассемблером понимается lib/ext/disasm.f
[21:31] [Kamikaze13] А стандартные что - пассуют совсем?
[21:31] [profit1984] Не знаю что понимается под "стандартными", но я даже не пробовал.. Смысл?..
[21:31] [profit1984] lib/ext/disasm.f
[21:31] [mOleg] 8)
[21:31] [mOleg] не совсем пасуют, но нужно ими с умом пользоваться
[21:31] [mOleg] так что действительно гораздо проще lib/ext/disasm.f
[21:31] [Kamikaze13] Ууууу! Смысл - хотел отладчиком посмотреть что происходит в процессе выполнения проги. Стандартные - IDA и OllyDbg
[21:31] [profit1984] lib/ext/disasm.f
[21:32] [profit1984] : r 2 DUP + . ;
[21:32] [profit1984] SEE r
[21:32] [profit1984] Последние три мои строчки скормить SPF
[21:32] [mOleg] а смысл отладчиком смотреть?
[21:32] [Kamikaze13] Так мне же надо наблюдать за подгружаемыми DLL например..
[21:32] [mOleg] он же не покажет два стека
[21:33] [profit1984] Хэ.. Человек испорченный асмом..
[21:33] [profit1984] То есть "измученный".
[21:33] [mOleg] вообще и для меня вопрос актуальный
[21:34] [Kamikaze13] Ну да - у меня движек 50/50 асм с фортом
[21:34] [Kamikaze13] Работает движек между прочим!
[21:34] profit1984 (^azekeProf@82.200.252.37) left irc: Connection reset by peer
[21:34] profit1984_ (^azekeProf@82.200.252.37) joined #forth.
[21:34] [profit1984_] Вообще бытует мнение что интерактивные отладчики -- зло.
[21:34] [profit1984_] Я его не разделяю, но понимаю.
[21:34] Nick change: profit1984_ -> profit1984
[21:36] [profit1984] Kamikaze13 попробуй ещё знаешь что..
[21:36] *** profit1984 ищёт путь к отладчику Михаила..
[21:36] [profit1984] ~mak\dbg4.f
[21:36] [profit1984] И после подключения пиши:
[21:36] [profit1984] DBG r
[21:36] [profit1984] Где r слово которое хочешь отладить.
[21:36] [profit1984] Но "интерфейс", конечно там..
[21:36] [profit1984] Есть ещё его же более последний и несколько более человеческий DBGWC, но это фактически форк и достаточно плохо совместим с другими программами.
[21:39] [profit1984] Вот кстати эти вот обзывания "злом" -- это тоже довольно интересно..
[21:39] [profit1984] У многих локальные переменные -- зло. Интерактивные отладчики -- зло.
[21:39] [profit1984] Во имя purity садомазо занимаются, теряя своё же время.
[21:41] [Kamikaze13] Не зло!!! А удобство в работе!!! Я без них с тем что отсылается и принимается между модулями...
[21:41] [profit1984] profit1984_ Вообще бытует мнение что интерактивные отладчики -- зло.
[21:41] [profit1984] profit1984_ Я его не разделяю, но понимаю.
[21:41] [mOleg] аа, это к вчерашнему разговору
[21:41] [mOleg] ну и ?
[21:41] [profit1984] > Я его _не_ разделяю
[21:41] [mOleg] отладчики - не так уж и плохо
[21:41] [mOleg] а вот локлсы
[21:41] [profit1984] Но если человеку нужен отладчик это значит что программу свою он сам не понимает что она творит.
[21:41] [Kamikaze13] Отладчики - инструмент! И говорить что этот инструмент форту не нужен - неверно
[21:41] [profit1984] А в у истинных хакеров такого происходить типа не должно.
[21:42] [profit1984] Kamikaze13, "Я его _не_ разделяю"
[21:42] [Kamikaze13] А в Оле можно кажется плагины под разные языки добавлять
[21:42] [mOleg] не всегда понятно, что делает код
[21:42] [mOleg] вообще отладчик нужен для постигания чужого в большей степени, чем своего
[21:42] [profit1984] А истинные хакеры, поборники чистоты скажут что значит "сам дурак", раз такой код написал.
[21:43] [mOleg] у тебя, кстати, какая версия
[21:43] [profit1984] А вот про чужое правда, да
[21:43] [Kamikaze13] По брекпойнтам можно все отследить!
[21:43] [profit1984] Особенно в случае legacy-кода, которые не ты и даже не твои предшественники писали.
[21:44] [Kamikaze13] Вообщем я засомневался с переходом на СПФ.... Может проще перегнать его либы в фортек?...
[21:44] [profit1984] Не получится.
[21:44] [profit1984] Тебе фактически придётся писать новую форт-систему.
[21:46] [profit1984] Пока же твои проблемы, с твоих же слов, ну-у-у.. Какие то не то что детские, но такие.. Переходные можно так сказать.
[21:46] [profit1984] Просто от непривычки.
[21:46] [Kamikaze13] Жаль что никого эта версия не заинтересовала - там исходники есть и .... идеи кой-какие...
[21:46] [mOleg] у меня тоже от спф-а сложное впечатление
[21:46] [mOleg] с одной стороны - открытые исходники
[21:46] [mOleg] с другой куча чудес в коде
[21:47] [profit1984] Вообще тут вечная проблема адептов и неофитов.
[21:47] *** profit1984 тут в планах имеет написания небольшого эссе на эту темку
[21:47] [Kamikaze13] вот-вот! Взять бы наработки СПФ с сделать начисто на базе того же фортека например...
[21:47] [mOleg] давай! почитаю
[21:47] [profit1984] Адепт всё знает, освоил, привык, обвыкся. И по другому уже не хочет/не может.
[21:48] [mOleg] кстати, кому нужна моя новая сборка?
[21:48] [profit1984] А неофит только только хочет войти "в тему".
[21:48] [profit1984] И естественно "детские" вопросы неофита адепта раздражают безмерно.
[21:48] [profit1984] Вне зависимости от их справедливости.
[21:48] [mOleg] да, kamikadze, посмотрел на сборку?
[21:48] [mOleg] какие вопросы или замечания появились?
[21:48] [Kamikaze13] mOleg а я фортек почтой не кидал?
[21:49] [profit1984] А это вот форк-лихорадку я как уже писал считаю даже не просто вредной, а убийственной для форта.
[21:49] [mOleg] кидал, но я по уши сейчас в СПФе
[21:49] [Kamikaze13] mOleg вчера пьянка была - сегодня работа только пришел - мои есть зовут уже...
[21:49] [mOleg] 8) да я не наставиваю 8)
[21:50] [profit1984] Принцип "мы свой, мы новый мир построим на обломках старого" -- не работает.
[21:51] [mOleg] пардон, у меня пролет
[21:51] [profit1984] Вы попробуйте старое не сломать. И тем более причиной для ломанья мира основанья не может быть ваше непонимание старых и работающих основ.
[21:51] *** profit1984 'а понесло
[21:52] [Kamikaze13] profit1984 это не правильный принцип! Я вот взял 2 джаббер сервера Флеш-клиента и DLL на форте - соединил и движек для онлайновой игры получился
[21:52] [profit1984] Kamikaze13, я так и сказал что революционный принцип разрушения старого до основанья неверен.
[21:53] *** profit1984 имеет впечатление что сложилась традиция перманетного непонимания между собой и Kamikaze13...
[21:54] [Kamikaze13] profit1984 и я о том же - правильный принцып соединить разные вещи и получить нечто свое
[21:56] [true-grue] По поводу локальных переменных. Если получается, что стековые операции -- "мазохизм", для чего вобще их использовать? Проще и удобнее все делать с переменными, как в других языках.
[21:56] [profit1984] Нет, я имею в виду особо запущенные случаи. С пятью-четырьмя и более элементами на стеке, вне зависимости от их одинарности-двойственности...
[21:57] [profit1984] Представители движения "За стековую чистоту" будут говорить что надо рефакторизоровывать или переделывать слово..
[21:57] [profit1984] Я имею в виду стековую эквилибристику.
[21:57] [true-grue] profit1984, А все-таки? Мы же не на форт-процессоре? Уж не самобоман ли все эти dup-drop?... ;) Или с другой стороны: с точки зрения архитектора языка оставлять обе идеологии -- явное излишество :)
[21:58] [profit1984] Ммм.. Не задумывался..
[21:58] [true-grue] profit1984, Ввести для каждого слова минисловарик аргументов, свойств и проч., как в некоторых других языках... ;)
[21:58] [profit1984] Может даже и самоомбан.. И что с того?..
[21:59] [mOleg] тут два вопроса
[21:59] *** profit1984 из тех что выбирает приятную для себя Матрицу херовой реальности.
[21:59] profit1984 kicked from #forth by TiReX: Маты запрещены !
[21:59] profit1984 (^azekeProf@82.200.252.37) joined #forth.
[21:59] [mOleg] первый можно озвучить так- кому что нравится
[22:01] [profit1984] Или "у кого на что хватает времени"
[22:01] [mOleg] второй - моного зависит от того, с чего начинать - то есть вопрос обучения и адаптации к конкретной системе
[22:01] [mOleg] в форте ни в коем разе не стоит знакомиться с локалсами до тех пор, пока не освоишься без них
[22:01] [profit1984] Хм. Пожалуй согласен.
[22:01] [mOleg] и получается, что, когда без них освоился - то они и не нужны 8)
[22:01] [profit1984] Да.
[22:01] [profit1984] А вот и нет..
[22:01] [profit1984] : allocatePatch ( vc -- ) >R R@ block @ ALLOCATE THROW
[22:01] [profit1984] \ counter 1+! counter @ CR . \ для контроля забора и отдачи памяти
[22:01] [profit1984] DUP 0! DUP R@ lastBlock !
[22:01] [profit1984] CELL+ DUP R@ there !
[22:01] [profit1984] R@ block @ + luft - R@ limit ! RDROP ;
[22:01] [mOleg] ну, практически не нужны
[22:01] [true-grue] profit1984, Я сейчас немножко о другом скажу. Форт очень красиво смотрится, когда остается тем крохотным и простым языком, о котором писали Броуди/Мур. Но, после всех этих занятий метапрограммирования, он превращается... вы не задумывались, что новичку сложно изучить не Форт, а все вот эти вот модули, ооп, строки, и проч. "наслоения".
[22:02] [profit1984] На примере этого кода видно что слово R@ фактически представляет собой локальную перменную.
[22:02] [mOleg] да, но эта локальная переменная одна -
[22:02] [mOleg] это раз
[22:02] [mOleg] второе она не является чем-то неестественным по отношению к форту
[22:02] [mOleg] и легко реализауется на форт-процессоре
[22:03] [mOleg] в отличии от локалсов
[22:03] [profit1984] Ну так у меня туча примеров когда надо заполнять одновременно две-три структуры одновременно..
[22:03] [profit1984] И тут выбор: либо эквилибристика либо локальные переменнные.
[22:03] [profit1984] Я выбираю синюю пилюлю.
[22:03] [profit1984] Оно проще и легче.
[22:04] [mOleg] либо специальная структура для упрощения процесса
[22:04] [mOleg] например дополнительный стек
[22:04] [profit1984] Введение ещё одной лишней сущности для упрощения. Интересно-интересно, что на это скажет Оккам...
[22:04] [true-grue] Смешно, занимаясь написанием скриптов под Windows XP, оглядываться на какой-то мифический форт-процессор ;)
[22:06] [mOleg] опять спутник 8[
[22:06] [mOleg] нет нормально
[22:06] [profit1984] Или вот есть одно совершенно непрошибаемо-железобетонно-основанное использование локальных переменных -- bac4th.
[22:06] [profit1984] Так как в нём обычные фортовские игры со стеком не катят.
[22:07] [profit1984] Правда для bac4th'а мне пришлось писать свою реализацию локальных переменных.. Но это нормально, думаю.
[22:08] [profit1984] А мотивировать полный отказ от локальных переменных "чуждостью советскому образу мышления" -- не моё.
[22:08] [true-grue] Ведь что такое локальные переменные? Как раз та самая воплощенная мечта chess'а о стековых перестановках :)
[22:09] [profit1984] Нет.. То есть не совсем то.
[22:09] [profit1984] Так как тогда будет реализация "в лоб", как та что я предложил на форуме.
[22:11] [mOleg] а почему в бекфорте нельзя без локальных переменных обойтись?
[22:11] [profit1984] \ Опять же, если итератор более-менее сложный то в процессе промежуточных
[22:11] [profit1984] \ вычислений стек итератора может принимать произвольную глубину. Пример:
[22:11] [profit1984] \ 1 iterator ( 1 ... x )
[22:11] [profit1984] \ Даже если мы знаем что iterator отправляет на успех только одно значение
[22:11] [profit1984] \ на стеке могут быть ещё также быть промежуточные значения вычислений
[22:11] [profit1984] \ итератора, и достать единицу в примере не полагаясь на внутренние
[22:11] [profit1984] \ детали реализации iterator , мы не можем.
[22:12] [profit1984] Так как стек общий для всех итераторов (или в данном примере проще называть их "сопрограммами"), то на нём возникают критические области, трогать которые смертельно опасно для вашей программы.
[22:12] [mOleg] ок, у меня есть либа dsadd.f
[22:12] [profit1984] По этому поводу я даже хотель делать локальные стека.
[22:12] [mOleg] ты в нее смотрел?
[22:13] [profit1984] То есть локальные стеки для каждого итератора.
[22:13] [mOleg] нет
[22:13] [profit1984] И что я там должен увидеть.
[22:13] [profit1984] ?
[22:13] [mOleg] посмотри
[22:13] [mOleg] там не много
[22:13] [profit1984] И что я там должен увидеть?
[22:14] [mOleg] возможно, решение проблемы
[22:16] [profit1984] Как простые отметки на стеке могут помочь достать единицу в примере выше?..
[22:16] [mOleg] нет, они помогут очищать стек
[22:16] [mOleg] откатываться то бишь до нужного уровня
[22:16] [profit1984] ?? Нельзя откатываться до уровня!..
[22:16] [profit1984] Промежуточные значения потом ещё нужны итератору.
[22:16] [profit1984] Их нельзя трогать.
[22:16] [mOleg] подожди
[22:16] [mOleg] я так понимаю процесс
[22:16] [mOleg] у тебя есть набор данных исходный
[22:17] [mOleg] и ты пытаешься решить задачу различными способами
[22:18] [mOleg] в коце ты должен просеять ответы и выбрать нужный\ые
[22:18] [mOleg] кстати, набор исходный может в процессе меняться?
[22:18] *** profit1984 ни буквы не понял. О чём это было вообще?
[22:18] [mOleg] пардон, опять у меня спутник
[22:18] [mOleg] минут через десять
[22:19] [mOleg] вернусь
[22:19] true-grue (~xyyyyzy@89-178-1-5.broadband.corbina.ru) left irc: ""
[22:19] [profit1984] При бэкфортовом "успехе", итератор внутри себя (!) передаёт управление выше (!) или дальше как хочешь называй.
[22:21] [profit1984] И ожидает что стек после выполнения "успеха" будет в более-менее предсказуемом состоянии.
[22:22] Kopa (^5574743b@ircgate.deware.lo) joined #forth.
[22:23] [Kopa] Всем Привет!
[22:23] [profit1984] Привет-привет.
[22:26] [Kopa] O чем в этот раз мысли на канале? Логи читать неохота.
[22:26] [profit1984] Краткое содержание пред-х серий:
[22:26] [profit1984] profit1984_ Вообще бытует мнение что интерактивные отладчики -- зло.
[22:26] [profit1984] profit1984_ Я его не разделяю, но понимаю.
[22:26] [profit1984] profit1984 Вот кстати эти вот обзывания "злом" -- это тоже довольно интересно..
[22:26] [profit1984] profit1984 У многих локальные переменные -- зло. Интерактивные отладчики -- зло.
[22:26] [profit1984] profit1984 Во имя purity садомазо занимаются, теряя своё же время.
[22:26] [profit1984] profit1984 Но если человеку нужен отладчик это значит что программу свою он сам не понимает что она творит.
[22:26] [profit1984] profit1984 А в у истинных хакеров такого происходить типа не должно.
[22:26] [profit1984] mOleg вообще отладчик нужен для постигания чужого в большей степени, чем своего
[22:26] [profit1984] profit1984 А истинные хакеры, поборники чистоты скажут что значит "сам дурак", раз такой код написал.
[22:26] [profit1984] profit1984 А вот про чужое правда, да
[22:26] [profit1984] profit1984 Особенно в случае legacy-кода, которые не ты и даже не твои предшественники писали.
[22:27] [profit1984] profit1984 Вообще тут вечная проблема адептов и неофитов.
[22:27] [profit1984] profit1984 Адепт всё знает, освоил, привык, обвыкся. И по другому уже не хочет/не может.
[22:27] [profit1984] profit1984 А неофит только только хочет войти "в тему".
[22:27] [profit1984] 00:48 profit1984 И естественно "детские" вопросы неофита адепта раздражают безмерно.
[22:27] [profit1984] profit1984 Вне зависимости от их справедливости.
[22:27] [profit1984] profit1984 А это вот форк-лихорадку я как уже писал считаю даже не просто вредной, а убийственной для форта.
[22:27] [profit1984] profit1984 Принцип "мы свой, мы новый мир построим на обломках старого" -- не работает.
[22:27] [profit1984] profit1984 Вы попробуйте старое не сломать. И тем более причиной для ломанья мира основанья не может быть ваше непонимание старых и работающих основ.
[22:27] [profit1984] profit1984 'а понесло
[22:27] [profit1984] true-grue По поводу локальных переменных. Если получается, что стековые операции -- "мазохизм", для чего вобще их использовать? Проще и удобнее все делать с переменными, как в других языках.
[22:27] [profit1984] 00:56 profit1984 Нет, я имею в виду особо запущенные случаи. С пятью-четырьмя и более элементами на стеке, вне зависимости от их одинарности-двойственности...
[22:27] [profit1984] 00:57 profit1984 Представители движения "За стековую чистоту" будут говорить что надо рефакторизоровывать или переделывать слово..
[22:27] [profit1984] profit1984 Я имею в виду стековую эквилибристику.
[22:27] [profit1984] true-grue
[22:27] [profit1984] profit1984, А все-таки? Мы же не на форт-процессоре? Уж не самобоман ли все эти dup-drop?... Или с другой стороны: с точки зрения архитектора языка оставлять обе идеологии -- явное излишество
[22:27] [profit1984] 00:58 profit1984 Ммм.. Не задумывался..
[22:27] [profit1984] true-grue
[22:27] [profit1984] profit1984, Ввести для каждого слова минисловарик аргументов, свойств и проч., как в некоторых других языках...
[22:28] [profit1984] profit1984 Может даже и самоомбан.. И что с того?..
[22:28] [profit1984] mOleg тут два вопроса
[22:28] [profit1984] mOleg первый можно озвучить так- кому что нравится
[22:28] [profit1984] profit1984 Или "у кого на что хватает времени"
[22:28] [profit1984] 01:00 mOleg второй - моного зависит от того, с чего начинать - то есть вопрос обучения и адаптации к конкретной системе
[22:28] [profit1984] mOleg в форте ни в коем разе не стоит знакомиться с локалсами до тех пор, пока не освоишься без них
[22:28] [profit1984] profit1984 Хм. Пожалуй согласен.
[22:28] [profit1984] mOleg и получается, что, когда без них освоился - то они и не нужны 8)
[22:28] [profit1984] profit1984 Да.
[22:28] [profit1984] 01:01 profit1984 А вот и нет..
[22:28] [profit1984] profit1984 : allocatePatch ( vc -- ) >R R@ block @ ALLOCATE THROW
[22:28] [profit1984] profit1984 \ counter 1+! counter @ CR . \ для контроля забора и отдачи памяти
[22:28] [profit1984] profit1984 DUP 0! DUP R@ lastBlock !
[22:28] [profit1984] profit1984 CELL+ DUP R@ there !
[22:28] [profit1984] profit1984 R@ block @ + luft - R@ limit ! RDROP ;
[22:28] [profit1984] mOleg ну, практически не нужны
[22:28] [profit1984] true-grue
[22:28] [profit1984] profit1984, Я сейчас немножко о другом скажу. Форт очень красиво смотрится, когда остается тем крохотным и простым языком, о котором писали Броуди/Мур. Но, после всех этих занятий метапрограммирования, он превращается... вы не задумывались, что новичку сложно изучить не Форт, а все вот эти вот модули, ооп, строки, и проч. "наслоения".
[22:28] [profit1984] profit1984 На примере этого кода видно что слово R@ фактически представляет собой локальную перменную.
[22:28] [profit1984] 01:02 mOleg да, но эта локальная переменная одна -
[22:28] [profit1984] mOleg это раз
[22:28] [profit1984] mOleg второе она не является чем-то неестественным по отношению к форту
[22:28] [profit1984] mOleg и легко реализауется на форт-процессоре
[22:28] [profit1984] mOleg в отличии от локалсов
[22:28] [profit1984] 01:03 profit1984 Ну так у меня туча примеров когда надо заполнять одновременно две-три структуры одновременно..
[22:29] [profit1984] profit1984 И тут выбор: либо эквилибристика либо локальные переменнные.
[22:29] [profit1984] profit1984 Я выбираю синюю пилюлю.
[22:29] [profit1984] profit1984 Оно проще и легче.
[22:29] [profit1984] mOleg либо специальная структура для упрощения процесса
[22:29] [profit1984] mOleg например дополнительный стек
[22:29] [profit1984] 01:04 profit1984 Введение ещё одной лишней сущности для упрощения. Интересно-интересно, что на это скажет Оккам...
[22:29] [profit1984] profit1984 Или вот есть одно совершенно непрошибаемо-железобетонно-основанное использование локальных переменных -- bac4th.
[22:29] [profit1984] profit1984 Так как в нём обычные фортовские игры со стеком не катят.
[22:29] [profit1984] 01:07 profit1984 Правда для bac4th'а мне пришлось писать свою реализацию локальных переменных.. Но это нормально, думаю.
[22:29] [profit1984] 01:08 profit1984 А мотивировать полный отказ от локальных переменных "чуждостью советскому образу мышления" -- не моё.
[22:29] [profit1984] true-grue Ведь что такое локальные переменные? Как раз та самая воплощенная мечта chess'а о стековых перестановках
[22:38] [mOleg] profit?
[22:38] Kopa (^5574743b@ircgate.deware.lo) left irc: "CGI::IRC [irc.run.net] (EOF)"
[22:38] [profit1984] У?
[22:38] [mOleg] > При бэкфортовом "успехе", итератор внутри себя (!) передаёт управление выше (!) или дальше как хочешь называй.
[22:39] [mOleg] > И ожидает что стек после выполнения "успеха" будет в более-менее предсказуемом состоянии.
[22:39] [mOleg] как это выглядит
[22:39] [mOleg] то есть состояние стека до и после
[22:41] [profit1984] Вообще-то Гасаненко всё это достаточно много раз и обширно уже объяснял.
[22:41] [mOleg] и как это контролируется?
[22:41] [profit1984] В своих многочисленных работах (под десяток числом) на эту тему.
[22:41] [mOleg] слишком много и обширно
[22:41] [mOleg] а в двух словах? можно
[22:41] [profit1984] Большая тема -- большой диссер.
[22:41] [profit1984] Ладно. Щас
[22:41] *** profit1984 набирает воздух
[22:41] [mOleg] еще один полетел
[22:41] [mOleg] можешь не спкшить
[22:42] [mOleg] через 10 мин вернусь
[22:42] Kopa (^5574743b@ircgate.deware.lo) joined #forth.
[22:44] [Kopa] Обрыв связи модема:) Наверное надо переходить на кабельное подключение дома.
[22:51] [mOleg] я уже тут
[22:51] *** profit1984 набирает воздух
[22:51] [profit1984] (сдавленно) можно?
[22:51] [mOleg] меня интерисует всего один момент - передача данных и возвращение результата
[22:52] [Kopa] ???
[22:52] [profit1984] : INTSTO ( n <-->x ) PRO 0 DO I CONT DROP LOOP ; \ генерирует числа от 0 до n-1
[22:52] [mOleg] это к profit-у
[22:52] [profit1984] : 1-20. 20 INTSTO DUP . ; \ выдаёт числа от 1-го до 20-и
[22:53] [mOleg] тут понятно
[22:53] [mOleg] здесь нет обработки после CONT
[22:53] [profit1984] Как это -- нет?..
[22:53] [profit1984] А DROP, а LOOP ?
[22:53] [mOleg] идет простой сброс лишних данных
[22:54] [profit1984] Всё равно.. Сброс расчитывает на определённое кол-во элементов на стеке которые надо сбросить.
[22:54] [Kopa] Понятно. Сегодня задумался о проблемах с ресурсным редактором. У каждой мало мальской среды он свой и это только добавляет проблемы непереносимости ПО.:)
[22:56] [mOleg] в приведенном примере все понятно
[22:56] [mOleg] а как выглядит случай, когда после CONT есть обработка?
[22:56] [profit1984] : 1-10
[22:56] [profit1984] 1 BEGIN CONT
[22:56] [profit1984] DUP 10 < WHILE
[22:56] [profit1984] 1+ REPEAT DROP ;
[22:56] [profit1984] : 1-10. 1-10 DUP . ;
[22:56] [profit1984] То есть там ещё PRO нужно добавитью
[22:56] [mOleg] перед BEGIN ?
[22:56] [profit1984] Да. Пост-обработка ещё фигня...
[22:57] [profit1984] Промежуточные значения итератора -- вот что косяк.
[22:57] [mOleg] хорошо, первый свой аргумент привожу
[22:58] [mOleg] : INTSTO PRO 0 DO AddMark I CONT ClearToMark LOOP ;
[22:59] [profit1984] И?.. Между прочим у меня такое уже есть. Слово S|
[22:59] [mOleg] 8)
[22:59] [profit1984] Что даёт?..
[23:01] [profit1984] Просто сброс до нужной глубины.
[23:01] [mOleg] и тебя уже не волнует сколько значений будет возвращено после CONT
[23:01] [mOleg] не сброс а откат
[23:01] [profit1984] Не надо меня путать.
[23:01] [mOleg] 8)
[23:01] [mOleg] разве я путаю?
[23:01] [profit1984] В bac4th слово "откат" и так имеет уже несколько значений.
[23:01] [mOleg] ок, бусть будет восстановление глубины стека
[23:01] [mOleg] а вот как быть с данными?
[23:01] [profit1984] И опять повторюсь: что это даёт?..
[23:02] [profit1984] Каким образом это поможет взять единицу в примере выше?..
[23:02] [profit1984] Слово S| я использую в основном для контроля стека (я его так и называю), когда уже сам не могу понять где возникает утечка элементов стека.
[23:03] [profit1984] Или когда я знаю где утечка, но не могу её заткнуть (как в CUT: -CUT )
[23:03] [mOleg] понятно
[23:03] [profit1984] B между прочим как мои локальные переменные так и S| не требуют лишних стеков.
[23:04] [mOleg] а как у тебя работает S|
[23:04] [profit1984] \ Восстановление стека
[23:04] [profit1984] \ Нужно для обеспечения баланса стека при прямом и обратном ходе, при наличии таких
[23:04] [profit1984] \ опасных процедур как отсечения (NOT: -NOT или CUT: -CUT)
[23:04] [profit1984] : S| PRO BACK SP! TRACKING SP@ BDROP CONT ;
[23:06] [mOleg] то есть лежит на обычном стеке данных
[23:06] [profit1984] Нет, лежит на R-стеке.
[23:06] [profit1984] BDROP
[23:06] [mOleg] брр
[23:06] [profit1984] Хе-хе..
[23:06] [mOleg] действительно "хорошая крыша летает сама и в самый низ и в самые верха"
[23:07] [profit1984] Ты давай свой второй аргумент..
[23:07] [profit1984] Может он кажется лучше чем первый..
[23:07] [profit1984] * окажется
[23:07] [mOleg] я уже растерялся
[23:07] [profit1984] Ну дык..
[23:08] [mOleg] и у меня опять спутник 8[
[23:08] [profit1984] Не знаю.. Лично я со второго курса разбираюсь с bac4th'ом (а это где-то пять? пять лет)..
[23:09] [profit1984] И думал по поводу всех этих вещей *много* и *долго*.
[23:09] [profit1984] Что *думал* -- ерунда, реализация главное есть работающия и рабочая.
[23:26] [mOleg] отстрелял
[23:28] *** profit1984 смотрит на вращающийся тессеракт в 3-мерной проекции
[23:28] [mOleg] гм
[23:28] [mOleg] а я пивком балуюсь 8)
[23:28] [profit1984] А я -- нет.
[23:28] [mOleg] молодец! хвалю 8Р
[23:29] [profit1984] Здоровеньким помру.
[23:29] [mOleg] это никому не грозит
[23:33] [profit1984] Ну так что, mOleg? Решил за 20 минут мою проблему?..
[23:33] [profit1984] Буду только рад, если да.
[23:34] [mOleg] нет
[23:34] [mOleg] и у меня опять спутник
[23:34] [profit1984] Жаль. Придётся тогда идти торным путём...
[23:34] [Kamikaze13] ..
[23:34] [profit1984] "И будешь ты добывать свой хлеб с потом и слёзами" (с)
[23:36] [profit1984] И очередная серебряная пуля опять не далась в руки..
[23:37] [profit1984] Эх, трижды по трижды прав Брукс..
[23:37] Kamikaze13 (^51a9e53d@ircgate.deware.lo) left irc: "CGI::IRC [irc.run.net] (EOF)"
[23:38] Kamikaze13 (^51a9e53d@ircgate.deware.lo) joined #forth.
[23:39] [mOleg] профит, у тебя какое сейчас время?
[23:41] [mOleg] у меня GMT+2
[23:41] [profit1984] 2:40
[23:41] [profit1984] 2:41
[23:42] *** profit1984 хочет скушать холодную котлету и спачь лечь.. Лечть спачь.. Лечь спать, во!..
[23:43] [Kopa] Аналогично!!!
[23:43] [Kopa] Ошибся 1:40 :)
[23:43] Kamikaze13 (^51a9e53d@ircgate.deware.lo) left irc: "CGI::IRC [irc.run.net] (EOF)"
[23:47] [Kopa] TiReX: Go
[23:47] [Kopa] Begin
[23:48] Kamikaze13 (^d5b3fd5e@ircgate.deware.lo) joined #forth.
[23:49] [Kamikaze13] ..
[23:49] [mOleg] ну, что, ушли гости?
[23:49] [profit1984] Kopa: такие команды надо ygrek'ову боту говорить..
[23:51] [profit1984] Он там даже хотел в него консоль встроить (или нет?)..
[23:51] [Kopa] Есть разные боты?
[23:51] [Kamikaze13] mOleg гости вчера были - щас в семью бегал... Кстати Ваш форт в Иде нормально дизассемблируется!!!
[23:51] [Kamikaze13] ..
[23:51] [mOleg] мой форт - это сказано громко
[23:51] [mOleg] тирех вроде не ygrekовский бот
[23:51] [mOleg] у меня есть еще один более поздний вариан
[23:51] [Kamikaze13] ..
[23:51] [mOleg] кстати там чуть больше доки
[23:51] [Kopa] А какие еще форты ида нормально переводит?
[23:52] [profit1984] Кстати, mOleg ты обещался мне GForth положить в ящик..
[23:52] [mOleg] да вообще должны все нормально переводиться 8) только вот некторорые трюки;;;
[23:52] [mOleg] щас положу,
[23:53] [mOleg] у меня 0.6.2 версия
[23:53] [Kopa] IE выдает периодически предупреждение Out of memory at line 289 Чбы это значило?
[23:53] [mOleg] тебе под какую систему?
[23:54] [mOleg] есть под винду и под линух
[23:54] [profit1984] Win x86 32
[23:54] Kamikaze13 (^d5b3fd5e@ircgate.deware.lo) left irc: "CGI::IRC [irc.run.net] (EOF)"
[23:56] [profit1984] > IE выдает периодически предупреждение Out of memory at line 289 Чбы это значило?
[23:56] [profit1984] Это значит -- пора переходить на другой браузер.
[23:58] [Kopa] Давно из дома в I-net не выходил, да и ком сейчас фиговый. Опера лучше.
[23:58] Kamikaze13 (^51a9e53d@ircgate.deware.lo) joined #forth.
[23:58] [profit1984] Участник и ведущий портала operafan.net не возражает.
[23:59] [profit1984] mOleg: что отправляется долго?..
[23:59] [profit1984] Если сложно получается, то забей.. Найду где-нибудь сам.. По зеркалам..
[23:59] [mOleg] он большой
[23:59] [mOleg] нужно разбизть по частям
[23:59] [Kamikaze13] mOleg Ваш форт в Иде нормально дизассемблируется!!!
[23:59] [profit1984] Я знаю. потому и спрашиваю.






up

All Logs
#Sferoid
#WingLion
#relativity
#osteohondroz
#dragons
#Forth
#duraki




Generated by logs2html module for eggdrop v.2.3