[00:45:34] <valexеy> vlad2: я вообще думаю результаты этого бенчмарка отдельной страничкой сделать :-)
[01:03:18] <valexеy> /me компилит node.js
[01:04:11] <vlad2> А зачем его компилить? :)
[01:04:38] <valexеy> линух. в репе нет. ибо древний дебиан :-)
[01:39:16] <valexеy> vlad2: знаешь, у меня сильное ощущение, что js таки порвет ББ :-)
[01:40:32] <valexеy> ибо на древнем ноуте реализация на js отработала за 590 секунд
[01:49:09] <vlad2> Гы-гы-гы :)
[01:49:29] <vlad2> Т.е. ты таки запачкался js'ом? :)
[01:54:05] <_valexey_> ДА!
[01:54:24] <_valexey_> ща на этом древнем ноуте в венде попробую на Node.js и в ББ
[02:00:15] <vlad2> Ждем :)
[02:08:10] <vlad2> Вкусной еды :)
[02:52:31] <_valexey_> vlad2: http://oberspace.dyndns.org/index.php/topic,484.msg15824.html#msg15824
[02:52:34] <_valexey_> :-D
[02:54:02] <vlad2> Ням-ням :)
[02:54:18] <_valexey_> Я примерно это и ожидал на самом деле.
[02:54:28] <_valexey_> На 64битной системе должно быть еще круче.
[02:54:49] <vlad2> За счет чего?
[02:54:50] <_valexey_> Короче, если ты все правильно реализуешь, то твой компилер будет рвать ББ по производительности как нефиг делать.
[02:55:15] <vlad2> Да, я займусь этой задачкой сразу после скобок :)
[02:55:19] <_valexey_> За счет более умных оптимизаций, за счет того, что современный jit в v8 знает про современные процессора.
[02:55:38] <vlad2> Со скобками там рефакторинг пошел, а рефакторинг на жабаскрипте это очень больно :)
[02:55:42] <_valexey_> Знает например про SSE2, векторизацию и так далее.
[02:55:49] <_valexey_> :-)
[02:55:52] <vlad2> А.
[02:56:54] <_valexey_> Так что реализовав функционал ББ банально в виде веб-сервиса, мы получим более крутую числодробилку чем нативный BB :-D
[02:58:15] <_valexey_> Причем по моим прикидкам, js уступает сям где-то ну раза в два на такой задаче.
[03:00:18] <_valexey_> для полноты картины - нужно протестить акорновский компайлер, рифатовский и XDS
[03:02:17] <_valexey_> ну и Active Oberon c теми самыми екстеншинами.
[03:08:57] <_valexey_> vlad2: обрати внимание как я там массив заводил, в js-коде.
[03:22:58] <vlad2> Гы. Я и не знал, что там такие есть. Читерство ;)
[03:23:08] <vlad2> Попробуй на обычных ;)
[03:23:54] <vlad2> В такие массивы можно транслировать обероновские рекорды. Будет мегаэффективно :)
[03:24:26] <vlad2> Только с читабельностью выхлопа компилятора можно попрощаться :)
[03:24:47] <_valexey_> vlad2: оно, в частности, для того и делалось :-)
[03:25:50] <vlad2> Да, на самом деле я его видел в контексте asm js. Не знал, что его можно вот так вот просто использовать.
[03:26:30] <_valexey_> оно дофига кем поддерживается - и мозилловский движком, и v8 (то есть хром, node.js) и даже IE: http://msdn.microsoft.com/ru-ru/library/ie/br212477(v=vs.94).aspx
[03:28:28] <vlad2> То ли дело на плюсах... перехерачил кучу кода, запустил - и оно сразу работает :)
[03:28:52] <_valexey_> :-)
[03:29:11] <_valexey_> Да, вот описалово того самого применения о котором ты говорил: https://developer.mozilla.org/en-US/docs/JavaScript/Typed_arrays#Working_with_complex_data_structures
[03:32:20] <vlad2> Интересно насколько эти вьюшки эффективно сделаны.
[03:32:44] <_valexey_> думаю что весьма эффективно. ну, то есть как обычно - отставание от плюсов раза в два.
[03:33:17] <_valexey_> от оптимизированных плюсов.
[03:33:43] <vlad2> В смысле если я захочу вытащить поле из такой структуры - оно должно странслироваться в ексколько асмовских команд, не больше :) И никаких GC (new Uint8Array)
[03:34:03] <_valexey_> ога :-)
[03:36:56] <_valexey_> там же написано что same data, значит это аналог слайсов
[03:41:17] <_valexey_> vlad2: кстати, JS в своем репертуаре, даже тут. Если не тот тип попытаться присвоить элементу такого массива, то... То ничего не произойдет! Ни ошибки, ни присваивания не будет.
[03:41:38] <_valexey_> Более того, если выйти за границу массива, то... то тоже ничего не произойдет! Ни ошибки, ни порчи памяти.
[03:42:24] <_valexey_> нет, брешу - если не тот тип присваивать, то присвоится нуль.
[03:42:27] <_valexey_> 0
[03:42:31] <_valexey_> вот такой
[03:46:13] <vlad2> Я имл ввиду GC для конкретной вьюшки. Т.е. мне надо постоянно держать вьюшку, чтоб доставвать поле или я могу ее создвать непосредственно перед доступом к полю и оно соптимизится.
[03:47:00] <_valexey_> а вот фиг знает. надо смотреть.
[03:48:19] <_valexey_> можно попробовать запилить тест и проверить :-)
[03:49:16] <vlad2> var int16View = new Int16Array(buffer);
[03:49:20] <vlad2> int16View[0];
[03:49:33] <vlad2> Т.е. вот в этом коде будет ли мусор от new
[03:50:01] <vlad2> или же просто проверка на диапазон и обращение к памяти
[03:50:14] <_valexey_> никто не знает :-) надо пробовать. алсо бывают такие сборщики мусора, которым на такой вот мелкий мусор ну совсем наплевать.
[03:50:25] <_valexey_> например такой сборщик у haskell'я
[04:16:25] <vlad2> Так. И на маке сразу заработало. Прям праздник души сегодня...
[04:16:34] <vlad2> Победа ООП.
[04:18:43] <vlad2> Правда долго со скальпелем медитировал :)
[06:03:51] <vlad2> /me собирается ковырять хром. Хе0хе :)
[14:42:09] <valexеy> vlad2: я вот думаю, может этот бенчмарк на хабре опубликовать?
[16:01:36] <Kemet> valexеy: это неправильный бенч! в правильном ББ должен лидировать!
[16:01:55] <valexеy> Kemet: :-D
[16:06:16] <Kemet> надо попробовать с Active Math Oberon
[16:08:05] <valexеy> Да! А Active Math Oberon можно подвиндой заставить работать?
[16:08:14] <valexеy> Ну, чтобы мне тест прогнать на той же машине.
[16:14:20] <Kemet> ну из под винаос запустить, не?
[16:17:56] <valexеy> Kemet: да, и что там с 64битностью?
[16:21:37] <Kemet> 64 пока только натив вроде
[16:22:27] <valexеy> ну, то есть не протестировать.
[16:28:03] <Kemet> наверное вин64 никто не собирал пока, сам сомпайлер 64 бита держит, но будет ли работать винаос собранный с ключем 64 бита хз
[16:30:00] <Kemet> но я пока незнаю как на этом матобнероне правильно этот алгоритм перписать
[16:30:28] <Kemet> теоретически просто пеемножить матрицы со сдвигм
[16:31:46] <Kemet> вобщем это надо смотреть на реальной картинке, типа что было и что стало
[16:40:55] <Kemet> вроде сделал для 2-х мерного, вернее 3-х мерного, ибо цвет rgb тоже как array [3] of char сделал, вобщем получилось типа ARRAY [640, 480, 3] OF SHORTINT
[19:02:27] <alexey.veselovsky> шок. сенсация! 64битная node.js на 64 винде работает в ЧЕТЫРЕ раза МЕДЛЕННЕЙ чем 32битная!
[19:02:38] <alexey.veselovsky> интересно, как они этого добились?
[19:10:10] <vlad2> Это странно. Я использую 64 на десктопе и 32 на нетбуке. Разница в скорости примерно ожидаемая (~5 раз).
[19:10:33] <vlad2> Нетбук древний, десктоп бюджетный и тоже не новый.
[19:11:42] <vlad2> Возможно там у тебя какя-нибудь херня из серии "в кэш не влезло".
[19:23:08] <alexey.veselovsky> Нетбук тормозилище же
[19:30:28] <vlad2> Ну так и разница 5 раз :)
[19:31:34] <alexey.veselovsky> угу. это похоже на правду. и дело не в 32битах
[19:31:55] <alexey.veselovsky> разница между десктопом и ультрабуком (i5 в ультрабуке) -- 2-3 раза.
[19:36:14] <alexey.veselovsky> нетбук же на порядок тормознее
[20:05:10] <alexey.veselovsky> vlad2: http://oberspace.dyndns.org/index.php/topic,484.msg15832.html#msg15832
[21:46:27] <alexey.veselovsky> vlad2: назревает холивор! http://forum.oberoncore.ru/viewtopic.php?f=26&t=4328
[21:47:45] <alexey.veselovsky> у народа синдром утенка во все щели.
[22:15:14] <alexey.veselovsky> .
[22:16:06] <alexey.veselovsky> Иван жжот!
[22:16:13] <alexey.veselovsky> "Могу возразить, что подобные идеи возникли в то время, когда Америка ещё не офонарела от количества денег и идеи были, действительно, ценные."
[22:16:18] <alexey.veselovsky> /me facepalm
[22:20:53] <ilov_boris> :D
[22:21:17] <ilov_boris> детский сад
[22:21:35] <ilov_boris> человек view за пределами оберона увидал
[22:22:26] <alexey.veselovsky> угу. при том, что это ж Вирт тогда приехал в Xerox, офигел от красоты строящейся системы, и решил сделать игрушечную модельку у себя в универе, чтобы на ней обучать студентов.
[22:22:57] <ilov_boris> Кроме того Вирт сам же об этом в Прожекте и написал
[22:23:07] <ilov_boris> Иван не читал Прожект? O_o
[22:23:19] <alexey.veselovsky> И типа теперь Алан Кей (да-да, автор того самого смаллтолка!) сейчас спер эти идеи у Вирта!
[22:23:33] <ilov_boris> Ааха
[22:23:48] <ilov_boris> Тебе тоже это из постов Ивана показалось?
[22:23:52] <ilov_boris> :)
[22:24:23] <alexey.veselovsky> угу
[22:25:03] <alexey.veselovsky> Я не знаю точно, не считал, но у меня ощущение, что ББ-головного мозга очень хорошо коррелирует с Патриотизмом-головного мозга.
[22:25:36] <alexey.veselovsky> Синдром утенка со страшной силой и там и там
[22:25:43] <ilov_boris> Не удивлюсь если и помянутые Stores тоже в XEROX скомунижены
[22:26:01] <ilov_boris> В этом собсна нет ничего зазорного
[22:26:04] <alexey.veselovsky> И эти два мозговых симптома отлично переплелись в последнем сообщении от Ивана
[22:26:20] <ilov_boris> Но как оберкорцы носятся с этим.... весьма забавно
[22:27:09] <alexey.veselovsky> Ну да, обычный обмен идеями. Вообще, если посмотреть на середину 80-х годов идея составных документов и парадигмы "все есть документ" носилась в воздухе. Ей все больны были.
[22:27:13] <ilov_boris> Смотрите. В этой системе цикл WHILE есть!!!
[22:27:20] <ilov_boris> :D
[22:27:28] <alexey.veselovsky> Что затем, в начале 90-х годов вылилось в кучу-кучу реализаций этой идеи. Даже стандарты какие-то принимали.
[22:27:37] <alexey.veselovsky> apple там тоже где-то отличилась.
[22:27:47] <alexey.veselovsky> составной документ, ООП и так далее.
[22:28:17] <ilov_boris> А мне вот интересно видел ли Иван squeak
[22:28:28] <ilov_boris> Спросить не решился :)
[22:28:47] <alexey.veselovsky> Понимаешь, даже если бы видел - то он увидел бы его ПОСЛЕ того как он увидел ББ, следовательно сквик вторичен!
[22:28:59] <ilov_boris> Аааа ну да... ну да...
[22:29:38] <alexey.veselovsky> алсо он совершенно не допускает мысли, что одна и та же идея нескольким людям может в голову прийти независимо
[22:30:21] <ilov_boris> Про вьюхи достаточно глянуть в гугол: http://www.math.rsu.ru/smalltalk/sml-d.ru.html
[22:30:30] <ilov_boris> И сразу все становится понятно
[22:31:07] <alexey.veselovsky> Кстати, интересно, как народ обронкоровский будет ко мне относиться после публикации на хабре результатов бенчмарка :-)
[22:31:54] <ilov_boris> Да. Мне тоже интересно
[22:32:00] <ilov_boris> JS уделал ББ
[22:32:07] <ilov_boris> Даже я не ожидал
[22:32:29] <alexey.veselovsky> а я наоборот, ожидал
[22:32:38] <vlad2> Ты у них и так на правах еретика, которого держат только для того, чтоб можно было говорить о демократичности ;)
[22:32:40] <alexey.veselovsky> ибо jit. ибо не существует интерпретируемых ЯП
[22:33:02] <ilov_boris> Теперь я сомневаюсь уделает ли LuaJIT этот мерзкий JS :D
[22:33:49] <alexey.veselovsky> я тоже сомневаюсь :-) задачка все же довольно специфическая, под которую сейчас реализации js как раз пилят.
[22:34:26] <ilov_boris> В последнем бэнче на хабре LuaJIT уделал его
[22:35:09] <alexey.veselovsky> от задачи зависит. я все же использовал в коде типизированные массивы
[22:35:17] <ilov_boris> http://habrahabr.ru/post/113804/
[22:36:39] <alexey.veselovsky> а, там тоже типизированные массивы
[22:36:45] <ilov_boris> Угу
[22:37:09] <ilov_boris> А в Lua без типизированных массивов ваще никак
[22:37:21] <ilov_boris> Ибо размер массива в стандарте задавать нельзя
[22:37:29] <alexey.veselovsky> в js тоже нельзя
[22:37:36] <alexey.veselovsky> они резиновые
[22:37:41] <ilov_boris> New Array(100)?
[22:37:47] <ilov_boris> или как там
[22:38:08] <ilov_boris> Ну я про начальный размер
[22:38:12] <alexey.veselovsky> то что я использовал - это уже типизированные массивы
[22:38:19] <alexey.veselovsky> начальный размер 0 :-) в обычных
[22:38:27] <ilov_boris> Хм
[22:38:45] <alexey.veselovsky> но могу ошибаться конечно. например просто так двумерный массив там не сделать было
[22:38:55] <alexey.veselovsky> нужно в ЦИКЛЕ его генерить
[22:39:00] <ilov_boris> http://javascript.ru/Array
[22:39:25] <ilov_boris> Вот в Lua ваще никак начальный размер не задать
[22:41:02] <alexey.veselovsky> ну это ведь лишь оптимизация по сути
[22:41:05] <alexey.veselovsky> мелкая
[22:41:43] <ilov_boris> ну да
[22:42:04] <alexey.veselovsky> тем более что массив довольно убогий получается в js: "все значения в котором undefined"
[22:42:16] <ilov_boris> Я просто хочу сказать что на чистой Lua за такую задачу даже смысла нет браться
[22:42:34] <alexey.veselovsky> vlad2: ну я там по сути отсутствую на форуме. то присутствую не сильно больше чем ты.
[22:42:58] <alexey.veselovsky> да и на чуть более древнем js тоже.
[22:49:05] <ilov_boris> А в этом JS многопоточность есть?
[22:49:21] <alexey.veselovsky> вроде бы нет. также как в Оберон ОС :-)
[22:49:37] <ilov_boris> Я вот хочу попробовать на Lua в три потока эту задачу пустить
[22:49:47] <ilov_boris> правда не пользовался я еще ими
[22:49:49] <alexey.veselovsky> js на ББ/Оберон похож во всем - и по производительности, и по гибкости и динамичности, и по многопоточности :-D
[22:50:07] <alexey.veselovsky> ну, попробовать можешь, но в зачет не пойдет :-)
[22:50:21] <ilov_boris> Просто любопытно
[22:50:26] <alexey.veselovsky> угу
[22:50:29] <ilov_boris> задача то многопоточная по сути
[22:50:42] <alexey.veselovsky> задача по сути для GPU
[22:50:45] <ilov_boris> По потоку на канал
[22:50:49] <ilov_boris> угу
[22:51:01] <alexey.veselovsky> но в приложении к CPU её нельзя по ядрам раскидывать
[22:51:11] <alexey.veselovsky> потому, что другие ядра нужны для более значимых задач
[22:51:31] <ilov_boris> зацени: https://www.youtube.com/watch?v=lcwm4yaom4w
[22:52:50] <ilov_boris> там с 3:00 начиная эффект
[22:56:48] <alexey.veselovsky> ну, собственно там спец. оборудование на съемке используется
[22:57:09] <alexey.veselovsky> у нас решение дешевле :-D
[22:59:05] <ilov_boris> Прикольно если такие камеры будут выпоскать в ширпотреб
[22:59:23] <alexey.veselovsky> угу
[23:00:09] <ilov_boris> Сидишь такой регулируешь фокус фотки в фотошопе :D
[23:00:33] <alexey.veselovsky> ну, фоточка то будет далеко не png или jpg :-)
[23:00:49] <alexey.veselovsky> вообще так можно и с интеловской камерой в общем то. удовольствие - 150 баксов :-)
[23:01:24] <ilov_boris> А она сохраняет информацию о расстоянии в исходнике? O_o
[23:01:52] <alexey.veselovsky> она дает информацию о расстоянии. сохранять или нет - дело твоей программы.
[23:02:15] <ilov_boris> понятно
[23:02:40] <alexey.veselovsky> там конечно много-много нюансов, но тем не менее.
[23:03:03] <ilov_boris> Ждем стандарта от Adobe
[23:03:06] <ilov_boris> :)
[23:03:34] <alexey.veselovsky> ну, это не скоро будет, если будет вообще :-)
[23:03:58] <ilov_boris> Да лет через десять будет копейки стоить :D
[23:04:14] <alexey.veselovsky> что будет через 10 лет - не понятно :-)
[23:04:40] <ilov_boris> Угу. Может уже будут голографические фотики
[23:04:47] <alexey.veselovsky> но понятно, что если такие камеры вылезут на рынок, то нам придется их поддерживать :-)
[23:04:53] <ilov_boris> Сидишь такой выбираешь ракурс в фотошопе :D
[23:05:08] <TRUE> если оно будет копейки стоить, то на чём они нас обдирать тогда будут?
[23:05:33] <alexey.veselovsky> на массовости этих копеек :-)
[23:05:36] <TRUE> словом, я пессиместически настроен
[23:05:49] <alexey.veselovsky> нет смысла продавать прогу за многобаксов, если она не узкоспециализированная
[23:06:00] <alexey.veselovsky> лучше её продавать за 1 бакс - получишь больше бабла
[23:06:34] <alexey.veselovsky> Ну и вообще, почему вдруг "они"? Они - это мы - ты, я, он. Вперед делать продукт нужный миллионам!
[23:06:36] <TRUE> с чего это вдруг больше? Не очевидно
[23:06:45] <vlad2> Что это? http://forum.oberoncore.ru/viewtopic.php?p=79460#p79460
[23:06:47] <alexey.veselovsky> Очевидно. Спрос эластичен по цене.
[23:06:55] <TRUE> мы всё ещё про камеры говорим?
[23:07:03] <alexey.veselovsky> vlad2: это бред :-)
[23:07:19] <alexey.veselovsky> Да, про камеры и про софт который с ними работает.
[23:08:03] <vlad2> :)
[23:08:16] <vlad2> Драконоид сделал бота? :)
[23:08:37] <alexey.veselovsky> там еще один бред от этого же товарища в теме про язык Go и гуглоочки
[23:11:04] <alexey.veselovsky> такое ощущение, что то-ли уже где-то что-то зацвело и у народа аллергия неадеквату прибавила
[23:11:24] <alexey.veselovsky> то ли полнолуние уже и на некоторых это реально действует (но в среднем на активность форума целиком не влияет)
[23:12:06] <TRUE> чтобы продать железо дёшево, нужно его сделать дёшево. Оборудование, которое так фоткает, не в последнюю очередь зависит от механики. И от качества фотоматрицы. Пока дело касается цифрового сигнала, эти моменты влияют не сильно, но при аналоговом сигнале любые изъяны - это брак 100% (в цифровом мире не обязательно брак).
[23:12:12] <alexey.veselovsky> О! Весна+цветение деревьев+полнолуние+магнитная буря сейчас!
[23:12:49] <alexey.veselovsky> TRUE: насколько я понимаю, там банально насадка в виде множества микролинз.
[23:12:55] <TRUE> Ну так вот: механика делается людьми с древности, и в ближайшие годы не стоит ожидать какого-нибудь прорыва
[23:13:10] <alexey.veselovsky> это будет тупо штамповка скорее всего.
[23:17:57] <vlad2> Кстати да, вчера наблюда полную луну и сразу вспомнил о срывающих покровы бенчмарках :)
[23:20:36] <vlad2> Технологии распознавание голоса улучшаются, не может не радовать. Сейчас успешно пообщался с машиной 2010 года на моем ломанном английском.