[04:54:16] <valexеy> Дас, код Гиас хорош. Только непобедимые модели роботов меня бесят.
[07:30:34] <vlad3> Ты про что?
[13:14:08] <_valexey_> .
[13:14:56] <_valexey_> .
[13:24:11] <valexеy> vlad2: я про это: http://ru.wikipedia.org/wiki/Code_Geass
[14:00:28] <_valexey_> Надежность компиляторов оберона: http://forum.oberoncore.ru/viewtopic.php?f=115&t=4102
[14:25:11] <vlad2> Можно смотреть? :)
[14:25:27] <vlad2> Роботов не очень много?
[14:27:14] <vlad2> Гы: "Форум самого астроба не пускает такой вопрос на публикацию" ;)
[14:41:40] <valexey > vlad2: не очень. по сути это шахматы
[14:41:49] <valexey > с психологической подоплекой
[14:42:44] <valexey > Death Note смотрел?
[14:42:45] <vlad2> if[vfns&
[14:42:50] <vlad2> шахматы?
[14:42:58] <vlad2> Не, не смотрел еще (фильм)
[14:43:27] <valexey > а аниму? (ибо по Death Note еще и реально фильм сняли вроде бы.  c живыми актерами то есть)
[14:44:01] <valexey > vlad2: противостояние разумов и психологий
[14:44:12] <valexey > в общем, занятное аниме, рекомендую.
[14:44:30] <vlad2> Аниме тоже не смотрел, фильм в очереди.
[14:46:40] <valexey > Death Note как анима тоже хороша
[14:46:42] <vlad2> /me обожает чинить билд процедуры
[14:46:44] <valexey > а фильм не смотрел
[14:48:54] <valexey > да, заметь - компилятор у них абфусцирован
[14:48:57] <valexey > (в астробе)
[14:49:08] <vlad2> Да, я обратил внимание.
[14:49:15] <valexey > правда очень тупо обфусцирован (только имена на двух-трех буквенные заменены)
[14:49:23] <vlad2> Нах?
[14:49:34] <valexey > я дезассемблил его, там внутри нормальный код. только имена говенные
[14:49:49] <valexey > видимо чтобы кто-то не смог так просто заиметь исходники :-)
[14:49:54] <valexey > оно же КОММЕРЧЕСКОЕ!!11
[14:50:05] <vlad2> В смысле? Исходники есть?
[14:50:23] <valexey > в смысле оно же на .net написано
[14:50:31] <valexey > на C# скорее всего
[14:50:45] <valexey > такие проги отлично восстанавливаются из байткода
[14:50:58] <valexey > то есть их исходник восстанавливается автоматически
[14:51:36] <vlad2> А.
[14:51:44] <vlad2> Тогда понятно.
[14:51:57] <vlad2> Там же ш обфучкатор всесте со студией идет.
[14:52:13] <valexey > угу. хотя и убогий
[14:52:25] <valexey > убогость в том, что оно только идентификаторы переименовывает.
[14:52:53] <vlad2> А что ты еще хотел? Название классов - это ж святое в .net ;)
[14:53:03] <valexey > если восстановить исходник через дизасм, то посредством рефакторинга вполне реально за обозримое время (за пару выходных) привести его в читабельное состояние
[14:53:29] <valexey > ну, обычно обфускаторы еще запутывают код. то есть из под них выходит код-спагетти
[14:53:30] <vlad2> Опять же - нах? :)
[14:53:55] <valexey > чтобы враг исходники не получил :-)
[14:54:07] <valexey > точнее не смог сделать форк.
[14:54:50] <valexey > ну и соответственно не смог сделать хак/отвязать от регистрации например
[14:54:56] <valexey > включить те функции за которые не заплачено
[14:55:07] <vlad2> Я тя умоляю. Это ж оберон. Компилятор пишется за две недели. Причем без фатального недостатка :)
[14:55:08] <valexey > например убрать ограничение на 2 Кб ОЗУ :-)
[14:55:50] <valexey > Эмм.. Это фронтенд пишется за две недели. Еще как минимум месяц уйдет на бэкенд (изучить целевой АРМ таки нужно)
[14:57:01] <vlad2> Не знаю. Даже если б иам не было обфускации - заниматься восстановлением исходников как-то неинтенресно.
[14:57:16] <vlad2> Только ради супер ноу-хау алгоритма.
[14:58:54] <valexey > ну, возможно он (автор) хотел затруднить выделение компилятора как отдельной утилиты
[14:59:14] <valexey > ведь за это он тоже денег хочет :-)
[14:59:43] <valexey > то есть за то, что ты сможешь запускать компиляцию не из astrobe а из скажем своей системы сборки
[14:59:56] <valexey > а, да, дизасм там тоже отдельных денег стоит :-)
[15:00:47] <valexey > ( страшно себе представить сколько будет стоит отладчик, если он вообще появится когда-нибудь )
[15:03:39] <vlad2> А это вообще один чувак или контора?
[15:03:54] <valexey > это контора, но сколько там чуваков я не знаю :-)
[15:04:06] <valexey > и астробе не единственный их продукт
[15:04:40] <valexey > http://www.astrobe.com/about.htm
[15:07:40] <vlad2> Гы! В маковской гуевой утилите есть пункт меню "open terminal here". А вот файндер соснул :)
[15:11:50] <vlad2> Блин. Реально не хватает возщможности вбить путь в диалоге открытия файла на маке.
[15:15:35] <valexey > vlad2: да, он убогий, диалог этот. там из него даже каталожег не создать
[15:16:15] <vlad2> И это тоже.
[15:16:36] <vlad2> Чувствуется какая-то принципиальность со стороны эппла
[15:17:44] <valexey > у меня ощущение, что в плане дефолтных диалогов сейчас у яблока идеалогия начинает меняться
[15:23:38] <vlad2> В какую сторону?
[15:39:59] <valexey > хез. но они будут другими
[21:43:08] <valexеy> vlad2: http://oberspace.dyndns.org/index.php/topic,341.msg9341.html#msg9341
[21:43:10] <valexеy> :-)
[21:49:38] <vlad2> Да, порстебались.
[21:50:10] <vlad2> info21 так и не пришел ;)
[21:50:49] <vlad2> Кстати, ты можешь его по ip зптрэкать? Может он как гость заходит?
[21:53:20] <valexеy> Ну, руками могу. Автоматику настраивать лень :-)
[21:54:02] <valexеy> /me записался на курс "in memory DB".
[21:54:21] <valexеy> буду изучать. может напишу что по мотивам лекций :-)
[22:08:59] <valexеy> vlad2: а ты не пробовал плагины к clang'у писать?
[22:19:53] <vlad2> Нет :)
[22:20:04] <vlad2> Мне хватает сублима :)
[22:20:53] <valexеy> а я вот хочу пощупать на предмет легковесных потоков для плюсцов
[22:21:10] <valexеy> пусть даже с кооперативной многозадачностью. фиг с ним, с шедулером
[22:30:22] <valexеy> собственно основная проблема в том, чтобы с одной стороны каждой задаче дать как можно меньше стека, а с другой, чтобы в случае если кому-то потребовалось больше (переполнение стека конкретной задачи случилось), не рухнуть, а спокойно увеличить ей стек.
[22:30:40] <valexеy> без плагина к компилеру я слабо представляю как это можно сделать.
[23:06:20] <vlad2> Тупой файндер.
[23:06:26] <vlad2> Не может просто скопировать каталог.
[23:06:31] <vlad2> Валится с ошибкой.
[23:06:41] <vlad2> Повторно этот же каталог - работает.
[23:06:56] <valexеy> а у тебя просто каталог, или какой-то особенно-программерский?
[23:07:41] <vlad2> Я копировал все из dmg.
[23:07:48] <vlad2> Там было штук 10 каталогов.
[23:07:59] <valexеy> /me кажется придумал как победить легковесность переполнения стека
[23:08:10] <vlad2> Один из них обламался, при этом вся опрерация прервалась на серидине (тоже тупизна).
[23:08:14] <vlad2> Как?
[23:08:34] <vlad2> Не переполнять его? :)
[23:09:32] <valexеy> ога. мелкие треды с мелкими стеками выполнять в потоке с жиррный стеком.
[23:09:34] <valexеy> и все.
[23:09:45] <valexеy> а сохранять в памяти только использованный кусок стека.
[23:09:49] <valexеy> для каждой задачи
[23:09:51] <valexеy> ВАХАХА!
[23:09:59] <valexеy> Блин, криво сформулировал. Ну да ладно.
[23:10:20] <valexеy> Главное, что походу я реализацию этой идеи уже видел. Только тогда когда видел, я не понял идею.
[23:12:35] <vlad2> Нах все это тебе? :)
[23:13:25] <valexеy> ну а как ты предлагаешь массовое обслуживание организовывать?
[23:13:38] <valexеy> по одной задаче на каждую сессию/клиента - очень кошерно получается
[23:13:43] <valexеy> код выглядит не как говно
[23:18:54] <valexеy> вот как это делается!
[23:18:58] <valexеy>                // save current stack state
               push RBP;
               mov  RBP, RSP;
               push RBX;
               push R12;
               push R13;
               push R14;
               push R15;

               // store oldp
               mov [RDI], RSP;
               // load newp to begin context switch
               mov RSP, RSI;
[23:19:06] <valexеy> главное - портабельно! ;-D
[23:21:28] <vlad2> Похоже на powerpc асмю
[23:21:50] <valexеy> это AMD64
[23:22:08] <valexеy> ну или как нонче модно говорить - x86_64
[23:27:51] <valexеy> СЦУКИ!!!1
[23:27:54] <valexеy> SUSv2, POSIX.1-2001.  POSIX.1-2008 removes the specifications of makecontext() and swap‐
      context(), citing portability issues, and recommending that applications be rewritten to
      use POSIX threads instead.
[23:28:07] <valexеy> Они толкают меня на использования асма!
[23:28:33] <valexеy> от асмовой вставки прога конечно же станет более портабельной, ога.
[23:33:49] <valexеy> гм-гм. только я не понял где в этом куске асма сохраняются регистры FPU.
[23:34:25] <valexеy> или считается что переключение контекстов у нас во время вычислений быть не может? хотя, в принципе логично. у нас переключение контекстов явное ведь. только если yield явно вызвали.
[23:35:34] <valexеy> swapcontext( **(cast(ucontext_t***) oldp),
[23:35:37] <valexеy> :-D
[23:40:51] <valexеy> http://cs308318.userapi.com/v308318223/3f/2ebV4A2zYWI.jpg
[23:52:57] <valexеy> так. ага. минус моего решения (очевидный) - при переключении контекстов требуется копирование стека, а не просто указатели переставить.
[23:53:23] <valexеy> то есть переключение контекстов получается тяжеловесным.