Nikolay
есть подозрения из-за того что спецов по нему оч мало
Volodymyr
@varda гдето в свиттере читал что с Aurelia чуваки переписали на React и в ус не дуют
что-то мало похоже на правду, учитывая то, что чистый Реакт это только въюха — как можно переписать Ау на Реакт, не очень понимаю смысла.. хорошо бы линк приложить спасибо
Nikolay
@varda не знаю, я бы выбрал Angular2, он теперь тоже virtual dom умеет, у него есть поддержка на сервере, плюс он проповедует компонентный подход
Dreamerinnoise
И потом если выбирать себе между апи шаблонов аурелии и нг2, то я выбираю последнее
Dreamerinnoise
У Аурелии хорошо курнули
Nikolay
Тут можно ориентироваться на комьюнити и дальнейшую поддержку
Nikolay
у ng2 тима большая, а aurelia может через пару лет загнуться и ниче ты с этим не поделаешь
JẹtFightżer
смысл в vdom есть только при полной перестройке этого дом и дальнейшем дифе?
Anonymous
насколько плохая идея методы массива лодаш вонзить в нативный прототип массива?
Nikolay
очень плохая
Nikolay
но зачем?
Anonymous
ну оно не сработает
Anonymous
я туплю
Nikolay
@JetFightzer да в этом
Nikolay
ну тебе врапперы писать надо будет
Nikolay
но я за то чтобы вообще не использовать lodash
Дима
Если очень хочется, то просто сделай класс class Wrap extends Array { }
Nikolay
в одном говнокоде видел что lodash для each и reduce только используют =(
Anonymous
Anonymous
правда я не знаю, насколько, это юзабельно
Anonymous
все равно же редьюс до конца работает
Дима
Ну в лодаше да
Anonymous
рамде так понимаю нет?
Дима
Есть отдельный метод reduced, чтобы прервать процесс
Дима
И фигова тонна всяких аналогов редюса с различнейшими вариантами поведения
Дима
Ну и вообще есть lazyjs, в котором никакая операция в принципе до конца не будет делаться, по возможности)
Oleg
Я только что запустил скрипт, делающий итерацию раз в 41 секунду примерно, при этом таких итераций 44550. Как бы я был рад если нужно было не все из них считать 😄Но увы.
Oleg
у ng2 тима большая, а aurelia может через пару лет загнуться и ниче ты с этим не поделаешь
Вот так корпорации потихоньку захватывают рынок фреймворков с их платными доп услугами.
Oleg
Да это я так, к слову о том что можно не всё считать
Oleg
21 день ожидания пока посчитается, похоже пора переходить на голый С
Дима
А что ты такого там считаешь
Oleg
Да есть тут... кое-что...
Дима
41 секунда вычислений это же ппц
Anonymous
смотря что
Oleg
Ну там ещё 82 запроса в монгу в рамках итерации
Дима
Ааа, нну понятно тогда
Oleg
81 из них выгружают 2 гига объектов суммарно
Anonymous
жесть
Anonymous
а че с оптимизацией?
Anonymous
не завезли?
Oleg
Надо С завести видимо
Дима
Монга, два гига, эт что вообще за жесть то? 😄
Anonymous
статистика скорее всего
Anonymous
или порно
Дима
Ааа
Дима
В js есть SIMD и вычисления на gpu, но под них расписать ещё постараться надо
Дима
Хотя ладно, какой js при двух гигах данных %)
Anonymous
а что тут использовать нужно? чем выгружать?
Oleg
Ну суммарно если все итерации взять то будет 89 терабайт
Anonymous
😂
Anonymous
Надо С завести видимо
Шо сразу С то есть же раст)
Anonymous
pro.lsd.js
Дима
а что тут использовать нужно? чем выгружать?
Выгружать не проблема, я в redis туда-сюда гоняю достаточно внушительный объём данных и ничего) А вот обрабатывать немного напряжно
JẹtFightżer
на js пытаться писать синтаксический анализ это совсем плохо?
JẹtFightżer
Анализ чего?
какого-нибудь формального языка
JẹtFightżer
ну, предположим xml, html, css, может языка программирвоания, шаблонов
JẹtFightżer
а если надо много разбирать и без кэша?
Дима
Можно косячить в довольно широких пределах
Дима
Я тестировал свой грамматический парсер, там было написано, что моя обёртка вокруг R.pipe вызывалась около десяти тысяч раз
Дима
При этом разбор занимал менее одной десятой секунды)
JẹtFightżer
сколько от этого было профита?
JẹtFightżer
а то так-то 1/10 это дофига
JẹtFightżer
в случае реалтайма
Дима
сколько от этого было профита?
Мне важнее было написать сам прототип, потому что я так обкатывал одну идею — строка вида data :: when isEmpty [ identity 'empty list' of ] [+] 'tested' [*] [ objOf payload ] преобразовывалась в готовую функцию R.pipe( R.when( R.isEmpty , R.pipe( R.identity( 'empty list' ), R.of), R.append( 'tested' ), R.map( R.objOf( 'payload' ) ) Поэтому над оптимизацией я особо не запаривался, 10к R.pipe — это считай десять тысяч функций-обработчиков, думаю уж в это количество ты сможешь уместить всё что нужно)
JẹtFightżer
да, пожалуй
JẹtFightżer
какой милый язык, однако
Дима
И плюс 100ms — это время, которое тратит нода на вывод в консоль, так что реально наверняка было ещё меньше) А там всё иммутабельно было и на монаде either, короче довольно много пересчитывалось
Eugene
go vs rust
JẹtFightżer
Какой?))
data :: when isEmpty [ identity 'empty list' of ] [+] 'tested' [*] [ objOf payload ]
Дима
Ааа