Home
codingteam
codingteam@conference.jabber.ru
29.05.2016< ^ >

Тема: C, С++, D, Java, C#, Haskell, Ruby, Scheme, Common Lisp, Erlang, OCaml, JavaScript, TypeScript, Clojure, Scala, Nemerle, F#, Groovy, R, Rust.
Backup channel: codingteam@conference.codingteam.org.ru
HQ: http://codingteam.org.ru
Код постить сюда: http://lpaste.net/
Логи: http://tinyurl.com/ctcjr-logs
Юным погромцам сюда: http://e-maxx.ru/algo/ , а ещё читать Кнутца, Корменца, Седжвикца и др.
Morning Tsoding (вт, чт, вс, збс): https://twitter.com/tsoding
Let's Dev (когда Капитан на мостике): http://www.youtube.com/playlist?list=PLK6mcZkmN4QTusFvp_0GVtscQbCiIg81Y
http://i.imgur.com/slnyI6a.jpg
[00:00:02] <eaeee> хм
[00:00:08] <m4n71k0r> о, легко
[00:00:22] <m4n71k0r> ремоут дебажинг
[00:00:53] <eaeee> ну клиенты я на андроиде запускаю, там вроде пашет удаленный дебаг
[00:01:11] <eaeee> если эмуляторы наверн памяти не хватило бы :)
[00:02:14] <gsomix> m4n71k0r, несколько тысяч долларов. Но точные цены я не знаю.
[00:03:12] <m4n71k0r> gsomix: такая наукоёмка хрень? Вы её по атомам собираете?
[00:05:32] <gsomix> m4n71k0r, мы только рассчитываем. Остальное делает производитель: это изготовление пресс-формы, аренда термопластавтомата, сырье, контроль качества...
[00:05:47] <m4n71k0r> Хорошо, спасибо
[00:06:08] <gsomix> Для мелких партий невыгодно.
[00:11:08] <Minoru> что значит «мелких»? Такие линзы всему цодингтиму нужны!
[00:11:52] eaeee вышел из конференции
[00:12:51] eaeee зашёл в конференцию
[00:15:29] <m4n71k0r> eaeee: почему мне хочется блевать от кода софта для андроида?) Все эти `info = (TextView) findViewById(R.id.textView);`
[00:15:55] <Minoru> запах сишечки?
[00:16:26] <eaeee> m4n71k0r: нормальный метод
[00:16:28] <eaeee> чего не нра
[00:17:20] <m4n71k0r> Minoru: там просто ёбнутая кодогенерация, чтобы получить контрол, надо его по айдишнику найти и кастануть. Как будто это нельзя на дженериках написать каких-нибудь
[00:17:44] <eaeee> всегда так искал)
[00:17:59] <m4n71k0r> почему не так? findViewById<Toolbar>
[00:18:12] <eaeee> хмм
[00:18:48] <m4n71k0r> пахнет жабаскрыпом, ане сишечкой
[00:19:41] <Minoru> m4n71k0r: но в жабаскрипте нет тайпкастов
[00:20:18] <m4n71k0r> или хотя бы findViewById(Toolbar.class, R.id.toolbar);
[00:20:31] <eaeee> http://stackoverflow.com/questions/22805869/cast-result-findviewbyid-android-method
[00:21:55] <eaeee> m4n71k0r: чел во втором ответе вон пишет
[00:21:59] <m4n71k0r> eaeee: ответы сборища пыхеров, прям
[00:22:13] <eaeee> :D
[00:22:14] <m4n71k0r> @SuppressWarnings("unchecked")
[00:22:25] <m4n71k0r> можно так весь код зафигачить
[00:22:36] <m4n71k0r> и ловить хурму в рантайме
[00:22:54] gsomix вышел из конференции
[00:24:59] <eaeee> а зачем он так написал?
[00:25:36] <eaeee> без этого работать что ли не будет
[00:27:06] <m4n71k0r> в общем, я бы не возмущался, если бы оно возвращало не View, а T extends View
[00:30:51] <eaeee> чет не подумали ребята :(
[00:31:34] <m4n71k0r> видимо, когда далвик фигачили, он был очень аццким и дженерики не умел
[00:32:21] <m4n71k0r> а теперь это всё поддерживать надо, я бы с выходом "ведроид Нэ" переписал бы
[00:32:37] <eaeee> видимо если не хочешь каставать, писать такой метод надо
[00:32:40] <eaeee> http://android-activities.blogspot.ru/2013/11/cleaner-view-casting-with-generics.html
[00:33:35] <m4n71k0r> eaeee: это тоже самое, что и в втором ответе по первой твоей ссылке
[00:33:45] <eaeee> ага
[00:34:05] <m4n71k0r> я уже про это и сказал
[00:34:28] <Ender> блин. А кроме меня и форневера тут в шпирит никто не умеет, да?
[00:34:50] <eaeee> Ender: во что?
[00:35:13] <m4n71k0r> Ender: фуд умеет
[00:35:24] <m4n71k0r> ой, палю...
[00:35:42] <m4n71k0r> eaeee: Boobs.Spirit
[00:35:48] <m4n71k0r> Дух Сисек
[00:36:05] * eaeee не встречался с таким...
[00:36:21] <m4n71k0r> а с сиськами?
[00:37:08] <eaeee> это уже другой фреймворк?
[00:37:16] <m4n71k0r> Boobs
[00:37:28] <m4n71k0r> фреймворк)))
[00:37:38] <horta hell> Чпокер ловит зубами блох, пытаясь ими наесться.
[00:37:43] <m4n71k0r> $pet feed
[00:37:44] <horta hell> m4n71k0r: Чпокер аккуратно придерживает передними лапками добычу, кушая. Вы зарабатываете 1PTC.
[00:38:20] <Ender> Я спрашивал у фуда как-то, но он сказал, что он не помнит нихуя, давно им не пользовался.
[00:38:37] <Ender> просто в парсере у меня по сути 1 правило осталось доделать нормально
[00:38:52] <Ender> Вроде ничё сложного, но оно не работает, как следует
[00:39:06] <m4n71k0r> Ender: ну так лучше на х-ле всякие парсеки юзать, да
[00:39:38] <m4n71k0r> Ender: вообще, ты крут, Толян. У тебя свой язык теперь есть.
[00:45:00] ɹǝɟılʍǝu зашёл в конференцию
[00:45:48] <Ender> m4n71k0r, да. В нём есть кое-какое функциональное программирование и массивы. Считай, что полноценные. А для передачи их в функцию я использую указатели на массивы. Но только вот беда. Я сейчас не могу различать указатель и имя переменной.
[00:49:11] superka вышел из конференции: Logged out
[00:49:16] superka зашёл в конференцию
[00:49:29] m4n71k0r вышел из конференции
[01:20:26] eaeee вышел из конференции: Replaced by new connection
[01:20:27] eaeee зашёл в конференцию
[02:39:39] eaeee вышел из конференции: Replaced by new connection
[02:39:39] eaeee зашёл в конференцию
[03:13:01] Minoru вышел из конференции
[03:55:31] sleepyvenom вышел из конференции: Replaced by new connection
[03:55:32] sleepyvenom зашёл в конференцию
[04:02:52] eaeee вышел из конференции
[04:34:42] <kpecmuk> $pet stats
[04:34:58] <0xd34df00d> кретик
[04:35:01] <0xd34df00d> крестик, то бишь.
[04:35:30] <kpecmuk> $pet heal
[04:49:56] ɹǝɟılʍǝu вышел из конференции
[04:54:53] sleepyvenom вышел из конференции: Replaced by new connection
[04:54:55] sleepyvenom зашёл в конференцию
[06:16:10] rafaelrs вышел из конференции
[06:49:37] <horta hell> Чпокер жалобно скулит и просит еды.
[07:01:38] <horta hell> Чпокер с силой врезался лбом в живот kp-cmuk от голода, крепко вцепившись зубами и выдирая кусок ткани штанов с кошельком. kp-cmuk теряет 3PTC.
[08:22:23] Славный капитан зашёл в конференцию
[08:41:20] <ForNeVeR> send/m4n71k0r/Да, у нас на некоторых проектах есть отдельный прошаренный саппорт. Бэкапы когда надо делают, могут поковыряться в базе. NLog - хорошо (и я не понял, где в жабе есть более простой выбор инструментов - там, в особенности с логгерами, такой же зоопарк./
[08:41:21] <horta hell> ForNeVeR: Сообщение помещено в очередь.
[08:41:47] <ForNeVeR> $send m4n71k0r )\ //\ скобку\ забыл\ закрыть
[08:41:47] <horta hell> ForNeVeR: Сообщение помещено в очередь.
[08:44:21] <ForNeVeR> send/gsomix/TeX играется не межстрочным интервалом, а расстоянием между символами в строке и между словами в предложении, и делает это хорошо. Там действительно очень годный алгоритм защиты от т.н. "жидких строк". Он может контролировать интервалы сразу на целых страницах, следя, чтобы ни в одной строке этой самой "жидкости" не образовалось. Ворд же так не умеет./
[08:44:21] <horta hell> ForNeVeR: Сообщение помещено в очередь.
[08:46:44] <ForNeVeR> send/m4n71k0r/А, да, и у парсеков на х-е, и у FParsec на F#, и у Irony на C# та же самая проблема - их довольно сложно отладить. Можешь долго читать килобайтные логи, но готового ответа "почему распарсилось так, а не иначе" тебе никто не предоставит. Генерёная стейт-машина в этом отношении мне видится более "передовым" вариантом - можно погулять по генерённому коду в дебаггере и понять, что же там не так./
[08:46:44] <horta hell> ForNeVeR: Сообщение помещено в очередь.
[08:47:10] <ForNeVeR> Фух, всё, со вчерашними логами разобрался.
[09:04:57] superka вышел из конференции: Logged out
[09:05:02] superka зашёл в конференцию
[09:07:27] gsomix зашёл в конференцию
[09:08:36] <gsomix> Утро.
[09:09:17] <Славный капитан> На корабле утро!
[09:09:21] grouzen зашёл в конференцию
[09:09:55] <gsomix> ForNeVeR, за что купил, за то и продал.
[09:10:14] <ForNeVeR> gsomix: ну так вот я для тебя уточнил!
[09:10:22] <gsomix> Спасибо.
[09:10:40] <ForNeVeR> Я ж не для того чтоб поспорить, а для того чтоб проинформировать.
[09:10:47] <Ender> утро
[09:11:12] <Славный капитан> ForNeVeR: у зоопарка логгеров в жабе есть зукипер в виде slf4j + logback
[09:11:47] <ForNeVeR> Славный капитан: ага, я знаю, у нас из-за этой фигни хорта как-то раз перестала компилироваться :)
[09:11:48] <Славный капитан> которые так или иначе пролезают в любые проекты через зависимости XD
[09:11:59] <ForNeVeR> Славный капитан: как раз ты и поломал, между прочим!
[09:12:07] <Славный капитан> шта?!
[09:12:13] <Славный капитан> коммит покажи
[09:12:33] <ForNeVeR> Славный капитан: https://github.com/codingteam/horta-hell/pull/391
[09:13:04] <ForNeVeR> Это коммит с исправлением. Впрочем, я думаю, у тебя нет сомнений, что "hbc-core" именно ты и добавил.
[09:14:12] <Славный капитан> да, действительно
[09:14:24] <ForNeVeR> Там, кароч, в твиттере была добавлена зависимость от commons-logging, а у нас была зависимость от jcl-over-slf4j, в которой реализованы те же классы с теми же пакетами, что и в commons-logging, но которые пишут в slf4j.
[09:15:12] <ForNeVeR> Оно кое-как работало во время разработки (видимо, работали то пакеты от commons-logging, то от slf4j, но всем было похър), а вот sbt-assembly нам эту траблу нашёл во время запаковки для продакшена
[09:16:04] <Славный капитан> скорее, hbc работал с commons-logging, а все остальное -- с jcl-over-slf4j
[09:16:33] <Славный капитан> но это вообще как-то не очень
[09:17:18] <ForNeVeR> Да нет, не так.
[09:17:29] <ForNeVeR> Смотри, у нас в classpath может быть только одна версия класса.
[09:17:39] <ForNeVeR> Вернее, может быть и две, но в итоге победит какая-то одна.
[09:18:32] <ForNeVeR> Когда я говорю класслоадеру "дай мне класс apache.commons.logging.shitty" - он мне всегда даст какой-то конкретный класс, вне зависимости от того, кто я такой.
[09:18:45] <ForNeVeR> Ну, если мы не заменили класслоадер своим, и не шерудим ему там classpath в рантайме.
[09:19:16] <ForNeVeR> Так что моя гипотеза состоит в том, что все юзали какую-то общую версию, но какую именно - UB.
[09:19:54] <Ender> ForNeVeR, я так и не смог сделать так, чтобы у меня правило arg работало, там где надо. Можешь посмотреть? Я прокомментировал места, где оно не работает. http://pastexen.com/code.php?file=eqXIc7Wkxl.txt
[09:20:09] <ForNeVeR> В жабе у тебя ж нету вообще конкретно хорошего способа идентифицировать жарник. Жарник не есть единица рефлекшена.
[09:20:17] <Славный капитан> ForNeVeR: ну это нормальная гипотеза
[09:20:39] <ForNeVeR> Ender: и где ты там прокомментировал?
[09:21:08] <Славный капитан> я не ей недоволен, а тем, что X-over-slf4j заменяет классы вместо того, чтобы оборачивать их
[09:21:36] <ForNeVeR> А, ну это да, это понятно. Я тоже недоволен. Им дали неймспейсы, а они всё равно насоздавали коллизий :)
[09:21:57] <Ender> в парсере, я около нерабочего правила написал, парсеров, где это правило отказывается работать как следует. Парсер 1003я строка.
[09:22:06] <ForNeVeR> Но, может быть, у этого commons-logging нету нормальных калбэков, и из-за этого пришлось такими костылями обкладывать?
[09:22:16] <ForNeVeR> Наверняка ж это прям самый распоследний вариант был.
[09:23:39] <ForNeVeR> Ender: вот этот вот "//" на 1019 строке - это называется "я подробно откомментировал"?
[09:24:25] <Славный капитан> ForNeVeR: ахз
[09:24:30] <Ender> нет, я просто выделил что FunctionCall обламывается. Среди всего.
[09:24:33] * ForNeVeR начал с того, что вырезал все "qi::omit[*(qi::space)] >> " в файле. Стало намного читабельней.
[09:24:44] <ForNeVeR> Ender: да где выделил-то, бля?
[09:24:56] <Славный капитан> я вот сейчас в log4j-over-slf4j посмотрел -- там та же херня
[09:25:21] <gsomix> ForNeVeR, пожалуй, свою диссертацию я буду оформлять в LaTeX.
[09:25:27] <ForNeVeR> Ender: мало того, что скидываешь "на посмотреть" исходники по 1200 строк, ещё и не можешь толком пояснить, где у тебя там предполагаемая проблема.
[09:25:43] <ForNeVeR> gsomix: ты уже диссертацию собрался писать?:)
[09:26:01] <gsomix> ForNeVeR, да, года так через три.
[09:26:11] <ForNeVeR> Мне тоже профессор периодически начинает рассказывать, что вот такая-то тема мне для докторской пригодится :)
[09:26:22] <ForNeVeR> А я, блин, ещё кандидатскую не дописал!
[09:26:33] <Ender> Я сейчас объясню. FunctionCall и FunctionDec, вместо ptrname должен работать arg. а он не хочет.
[09:26:48] <ForNeVeR> Ender: ебьона мать, ты можешь мне номер строчки сказать?
[09:26:48] <Ender> переменные обрабатывает, указатели нет.
[09:26:56] <Ender> секунду.
[09:27:02] <ForNeVeR> Если он щас не скажет, я его забаню к хуям.
[09:27:26] <gsomix> ForNeVeR, дописывай!
[09:27:50] <ForNeVeR> Ну вот щас проектик на React переведу, и следующее занятие в планах у меня уже дописывание диссертации.
[09:28:35] <ForNeVeR> Как и в прошлом году, наверное, начну с 1 июня, и за месяц всё сделаю :3
[09:28:40] <Ender> не работает правило 1096 (declared 1119) когда я его пишу вместо ptrname в 1099, 1020
[09:28:47] <ForNeVeR> (в прошлом году я сделал за месяц 3 главы из 4)
[09:29:24] <gsomix> ForNeVeR, тебе там еще не говорят: "задолбал, иди защищайся"?
[09:29:29] <ForNeVeR> Ender: ну вот, так бы сразу!
[09:29:33] <ForNeVeR> gsomix: нет, не говорят.
[09:30:34] <Ender> Если бы оно заработало, мне кажется, парсер был ну прям полнастю готов.
[09:30:57] <Ender> прям так, как я задумал.
[09:31:24] <ForNeVeR> Ender: продолжим бороться с твоей дислексией.
[09:31:30] <ForNeVeR> Ender: что значит "не работает"?
[09:32:02] <Ender> не парсит ptname, когда надо
[09:32:15] <ForNeVeR> Дак я думал, ты говоришь про правило arg.
[09:32:16] <Ender> только name
[09:32:22] <ForNeVeR> Ага.
[09:32:29] <ForNeVeR> Покажи пример.
[09:33:31] <Ender> если в тех двух правилах будет стоять arg вместо ptrname, вот такой прототип не распарсится. function memset [name<>] (a)
[09:33:48] <ForNeVeR> Ender: и, кстати, серьёзно надо бы что-то сделать с этими qi::omit[*(qi::space)], они заебали.
[09:33:55] <ForNeVeR> Я их убрал из кода, и мой разум сразу очистился
[09:34:06] <Ender> меня тоже заебали :(
[09:34:15] <ForNeVeR> Ender: в каких двух?
[09:34:26] <ForNeVeR> Я щас говорю про auto FuncDec = "function" >> name >> "[" >> (ptrname % (",")) >> "]" >> "(" >> (arg % (",")) >> ")" >> statement;
[09:34:32] <Ender> 1099, 1020
[09:34:41] <ForNeVeR> Здесь я вижу один arg и один prtname.
[09:34:48] <ForNeVeR> s/prt/ptr/
[09:34:50] <horta hell> ForNeVeR: Здесь я вижу один arg и один ptrname.
[09:34:50] <Ender> вот, да
[09:35:07] <Ender> funcdec если первый ptrname поменять на arg
[09:35:21] portnov зашёл в конференцию
[09:35:34] <ForNeVeR> А в текущем виде он парсится?
[09:35:44] <ForNeVeR> Так, так.
[09:35:51] <Ender> в текущем виде да.
[09:36:02] <ForNeVeR> А если сделать arg %= (ptrname | name)?
[09:36:50] <Ender> будет высирать в qi::_val дубль name, если встрится name.
[09:37:07] <ForNeVeR> А сейчас не высирает?
[09:37:51] <Ender> сейчас я там зафорсил, что я там жду ptrname, сейчас нормально всё, а в in переменных arg может распарить только имена переменных, не указатели.
[09:38:42] gsomix вышел из конференции
[09:38:47] <Ender> может быть, если ptrname поумнее определить, оно распарсит. Я никак не врублюсь, чё не так.
[09:38:56] <ForNeVeR> Ender: а там с приоритетом операторов ок вообще?
[09:39:16] <Ender> где?
[09:39:28] <ForNeVeR> Давай для начала попробуем
ptrname = qi::lexeme[(qi::alpha | '_') >> *(qi::alnum | '_') > /* <- вот тут поменял */ qi::char_('<') > qi::char_('>')];
[09:39:56] <Ender> щас запущу.
[09:40:08] <Славный капитан> жесть
[09:40:22] <Славный капитан> это вот так парсер-комбинаторы в крестах выглядят?
[09:40:29] <Славный капитан> https://pp.vk.me/c629314/v629314906/5e791/ZITESUAhfws.jpg
[09:40:32] <ForNeVeR> Славный капитан: да ебанина та ещё.
[09:44:17] <Ender> ForNeVeR, не распарсил.
[09:44:18] <Ender> http://pastexen.com/i/xzDUxy6EZN.png
[09:44:39] <ForNeVeR> А нахер ты такие длинные исходники туда суёшь?
[09:45:04] <Ender> исходник рабочий.
[09:45:06] <ForNeVeR> Ну и диагностика отличная, конечно.
[09:45:14] <ForNeVeR> Не распарсился нулевой символ.
[09:45:59] <ForNeVeR> Ender: с такой диагностикой и такими пояснениями разбирайся сам, в общем.
[09:46:03] <Ender> очевидно, что то, что в квадратных скобках (arg) -- не распарсилось, как ещё точнее сделать, я не знаю
[09:46:12] <ForNeVeR> Откуда очевидно?
[09:47:19] <ForNeVeR> Слушай, а ты ж можешь сделать ptrname = name >> '<' >> '>', да?
[09:47:35] <Ender> ну смотри. если я в funcdec поставлю вместо arg ptrname ( как в том исходнике, что я тебе скинул) всё распарится.
[09:47:41] <ForNeVeR> Ender: и вообще, почему у тебя там внезапно такая странная конструкция qi::char_('<') > qi::char_('>')? Почему между ними >?
[09:48:59] <Ender> а вот. А я думал ожидание тут больше подойдёт. Хотя если это элемент массива, то да.
[09:49:02] <Ender> щас поменяю.
[09:49:11] <kpecmuk> $pet stats
[09:49:11] <horta hell> kpecmuk:
Кличка: Чпокер
Здоровье: 60
Сытость: 58
Возраст: 34 часов
[09:49:30] <ForNeVeR> Ну и, наконец, получается, что на самом деле всё работает, если поменять ptrname и name местами?
[09:49:53] <ForNeVeR> Только почему-то дублируется название в qi::val_.
[09:50:44] <ForNeVeR> Надо бы вот с этим разобраться.
[09:51:24] <Ender> я ptrname = name > qi::char_('<') >> qi::char_('>'); так сделал.
[09:51:34] <ForNeVeR> НЪТ.
[09:51:39] <ForNeVeR> Вот так сдублируется наверняка!
[09:51:46] <ForNeVeR> И опять ты везде путаешь эти свои > >>
[09:51:50] <ForNeVeR> Ender: верни как было.
[09:51:54] <ForNeVeR> И слушай сюда.
[09:52:16] <ForNeVeR> Ender: смотри вопрос: http://stackoverflow.com/q/13869978/2684760
и ответ: http://stackoverflow.com/a/13870116/2684760
[09:53:26] <Ender> ХМ!
[09:53:37] <ForNeVeR> > You need to employ (the undocumented) directive hold[]
[09:53:48] <Ender> заебись
[09:53:52] <ForNeVeR> Ender: вот в этом треде даже ещё более чотко написано: http://comments.gmane.org/gmane.comp.parsers.spirit.general/20428
[09:54:17] <Ender> а чё они не надокументировали-то.
[09:54:49] <ForNeVeR> Может, щас уже документировали?
[09:55:48] <ForNeVeR> У буста есть документация на спирит в одном файле?
[09:55:59] <ForNeVeR> А то разбили на кучу HTML'ей, в них искать неудобно.
[09:57:02] <ForNeVeR> Ender: вот тут на самом деле есть ответ про hold: http://boost-spirit.com/home/articles/doc-addendum/faq/
[09:57:09] <ForNeVeR> http://boost-spirit.com/home/articles/doc-addendum/faq/#alternatives-attributes
[09:57:36] <ForNeVeR> И даже в доках есть! http://www.boost.org/doc/libs/1_61_0/libs/spirit/doc/html/spirit/qi/reference/directive/hold.html
[10:04:02] <Ender> а тут про Hold ни строчки.
[10:04:04] <Ender> http://www.boost.org/doc/libs/1_50_0/libs/spirit/doc/html/spirit/qi/reference/operator/alternative.html
[10:11:25] gsomix зашёл в конференцию
[10:20:55] <Ender> гы, http://pastexen.com/i/s5zdguGFBT.png
[10:20:57] <Ender> :)
[10:24:48] <Ender> ForNeVeR, Спасибо :)
[10:25:02] <ForNeVeR> Ender: заработало шоле?
[10:25:35] <Ender> вроде да. Щас ещё потестирую.
[10:51:36] rexim зашёл в конференцию
[10:51:41] m4n71k0r зашёл в конференцию
[10:51:53] <rexim> Чпоки-чпоки? ( ͡° ͜ʖ ͡°)
[11:07:56] <m4n71k0r> ForNeVeR: ого ты понаписал.

По поводу саппорта: мне вчера пришлось несколько часов как курица над цеплятами мониторить процесс выполнения моей пошаговой инструкции, я не ною, но это меня просто достало, я бы мог написать немного полезного кода в это время. Надеюсь, мне это зачтётся, но я намереваюсь писать подробнейшую инструкцию (жаль, что только я буду её поддерживать, но посмотрим).

По поводу шарпомьюнити: Я хотел сказать, что трудно найти хоть какое-то претендующее на авторитетное мнение по логгированию, кэшам, вебсервисам в контексте языка CSharp. Напоминает плюсы.

А разве нельзя писать что-то вменяемое в лог парсера? Я вот юзал JParsec и как-то понятно было (хотя писать этот код было неприятно). Видимо у меня была очень простая задача.
[11:08:22] <m4n71k0r> А NLog мне очень понравился. Может очень много. Отправка писем - это аще круть)
[11:14:29] <ForNeVeR> m4n71k0r: в жабе ж тоже сложно найти авторитетное решение (по крайней мере, я до сих пор терзаем сомнениями), см. дискуссию с капитаном выше.
[11:15:02] madmercen вышел из конференции
[11:15:45] <ForNeVeR> m4n71k0r: можно писать вменяемое в лог парсера, но парсер сложного языка - это (внезапно) очень комплексная вещь. Во время разбора выражения он может зайти и отбэктречиться в сто каких-нибудь состояний, и тебе (как человеку) придётся весь этот лог читать. Я дебажил парсеры по логам, и читать по 600 КиБ на каждую "мелкую" ошибку очень быстро надоедает.
[11:16:07] <ForNeVeR> Под "сложным языком" подразумеваю вот это: https://github.com/impworks/lens/
[11:16:37] <ForNeVeR> Ну, в смысле, это настоящий язык программирования, с лямбдами, вложенными экспрешенами, и всякой такой туфтой.
[11:16:54] <ForNeVeR> И на комбинаторах парсер для него было писать сложно!
[11:17:10] <ForNeVeR> А вот сделали самопальную, сермяжную стейт-машину с копипастой - и сразу полегчало :)
[11:20:24] <m4n71k0r> ForNeVeR: gcc-вей прям
[11:20:45] <ForNeVeR> Ну, блин, мы там торопились зарелизить, некогда было дебажить :(
[11:21:13] <m4n71k0r> они сначла вроде бы сгенерировали парсер, а потом на его основе сделали что получилось
[11:21:40] <m4n71k0r> я не против стейт-машин...я сам в каком-то роде состою из них
[11:21:47] <m4n71k0r> как я могу быть против себя?
[11:22:21] <m4n71k0r> и копипаст во мне много
[11:22:32] <m4n71k0r> в каждой клетке по копипасте
[11:24:36] <Славный капитан> m4n71k0r: у тебя есть изменяемое состояние?!
[11:24:47] <Славный капитан> может, ты еще и побочные эффекты производишь, еретик?!
[11:24:58] <m4n71k0r> каюсь(
[11:25:20] <m4n71k0r> но в целом от меня нет побочных эффектов
[11:25:34] <m4n71k0r> если окину меня взором вселенского масштаба
[11:25:46] <m4n71k0r> окинуть*
[11:27:23] <m4n71k0r> если время есть, то изменяемого состояния, скорее всего нет, так в каждый момент уже новый я
[11:27:36] <m4n71k0r> а если времени нет, то всё очень плохо.
[11:30:06] <m4n71k0r> А если видимая вселенная - всего лишь проекция, то я - это новый я как результат проецирования или то же я, но с другим состоянием?
[11:30:35] <m4n71k0r> пойду книжку почитаю...
[11:35:54] portnov вышел из конференции
[11:47:43] <rexim> .ping
[11:47:53] rexim вышел из конференции
[11:48:17] <DeadBot> rexim: rexim не предоставляет такого сервиса
[11:50:39] <kpecmuk> да он читер
[11:52:22] ɹǝɟılʍǝu зашёл в конференцию
[11:52:24] ɹǝɟılʍǝu вышел из конференции
[11:52:35] ɹǝɟılʍǝu зашёл в конференцию
[11:52:41] Jlopg_Xaoca зашёл в конференцию
[11:54:22] Jlopg_Xaoca вышел из конференции
[11:54:40] <ForNeVeR> Jlopg_Xaoca <- что это было?
[11:55:57] <gsomix> ForNeVeR, порталом ошибся.
[12:00:52] SolarRay вышел из конференции: This participant is kicked from the room because he sent an error presence: service-unavailable
[12:00:57] SolarRay зашёл в конференцию
[12:01:53] <Славный капитан> gsomix: кстати, я еще одну упоротую метрику нашел
[12:02:10] <Славный капитан> sqrt(x**2 - y**2)
[12:04:39] <ɹǝɟılʍǝu> Утро.
[12:06:55] SolarRay вышел из конференции: This participant is kicked from the room because he sent an error message to another participant: service-unavailable
[12:07:02] SolarRay зашёл в конференцию
[12:21:09] <ɹǝɟılʍǝu> Славный капитан, https://youtu.be/JtnHPNlzCz8
[12:21:11] <ɹǝɟılʍǝu> !!
[12:25:11] <Славный капитан> ɹǝɟılʍǝu: не слишком понимаю это увлечение квадрокоптерами, если честно
[12:25:29] <ForNeVeR> Штуковина-то классная же!
[12:25:43] <ɹǝɟılʍǝu> Славный капитан, чому? Офигенно жи!
[12:25:51] <ɹǝɟılʍǝu> Это как вертолётики пускать.
[12:26:00] <ɹǝɟılʍǝu> ВЖЖЖЖЖЖЖВЖВЖВЖЖВЖВ
[12:27:00] * Славный капитан пожал плечами
[12:27:07] <Славный капитан> штука и штука
[12:27:17] <ɹǝɟılʍǝu> ForNeVeR, Славный капитан http://cs8.pikabu.ru/images/big_size_comm_an/2016-05_6/1464460098143332480.gif
[12:27:34] <m4n71k0r> их копьями прикольно сбивать
[12:27:53] <ɹǝɟılʍǝu> m4n71k0r, http://cs8.pikabu.ru/images/big_size_comm/2016-05_6/146446651417168650.jpg
[12:28:11] <m4n71k0r> их копьями прикольно сбивать
[12:28:23] <m4n71k0r> отправилось нормально - пришло говно
[12:28:37] <m4n71k0r> какой-то глюк в миранде
[12:28:41] m4n71k0r вышел из конференции
[12:29:13] m4n71k0r зашёл в конференцию
[12:38:07] portnov зашёл в конференцию
[12:43:37] <horta hell> Чпокер рыщет в поисках пищи.
[12:46:34] <ɹǝɟılʍǝu> $pet feed
[12:46:34] <horta hell> ɹǝɟılʍǝu: Чпокер с отвращением давится, набивая желудок. Вы зарабатываете 1PTC.
[12:46:36] <ɹǝɟılʍǝu> $pet heal
[12:46:37] <horta hell> ɹǝɟılʍǝu: Чпокер будучи в здравом уме и твёрдой памяти отказался от медицинской помощи.
[12:46:42] <ɹǝɟılʍǝu> $pet rating
[12:46:42] <horta hell> ɹǝɟılʍǝu:
ɹǝɟılʍǝu: 12PTC
m-n71k0r: 3PTC
rexim: 2PTC
[12:48:36] m4n71k0r вышел из конференции
[12:52:33] grouzen вышел из конференции
[13:00:19] <Ender> http://pastexen.com/i/hFnds0hxug.png
[13:00:20] <Ender> ахуено
[13:03:56] <gsomix> Славный капитан, похоже на интервал.
[13:20:03] horta hell вышел из конференции: Disconnected: Replaced by new connection
[13:20:04] horta hell зашёл в конференцию
[13:39:09] superka вышел из конференции: Logged out
[13:40:01] superka зашёл в конференцию
[13:40:21] <kpecmuk> $pet stats
[13:40:23] <horta hell> kpecmuk:
Кличка: Чпокер
Здоровье: 15
Сытость: 83
Возраст: 37 часов
[13:40:29] <kpecmuk> $pet heal
[13:40:29] <horta hell> kpecmuk: Чпокер был совсем плох и, скорее всего, умер бы, если бы вы его вовремя не полечили. Вы зарабатываете 1PTC.
[14:11:30] Minoru зашёл в конференцию
[14:18:42] Graf зашёл в конференцию
[14:18:58] Graf вышел из конференции
[14:40:44] inPut зашёл в конференцию
[14:41:51] ydtrdvtrvd зашёл в конференцию
[14:41:53] <ydtrdvtrvd> Жил ОлмЕp, невольник чести, и снедала его скука, но пришли дурные вести, правая рука подруга. Он дрочил без остановки, правосечил до упаду, что даже без сноровки, стал великим в мире гадом.И вот Педро Порошенко в конкурс педиков послал, удивился сиро чпОлмep , он там даже не бывал. Но не надо напрягаться, он всё выполнил с лихвой, испустил немного газа над большущую толпой. Вот жюри, там лизоблюды, перетрахались мгновенно, ведь педрильный сиро олмер выиграть должен непременно. И по телеку в итоге, с бородой и в платье белом, олмер скачет недалеко, с флагом в попе очень смело. Он с наградой и с салютом, поздравленья принимает, но подрачивает люто на Рошенову конфету.
[14:41:59] <ydtrdvtrvd> ForNeVeR: =-O
[14:42:03] ydtrdvtrvd вышел из конференции: QIP Infium: Спокойное общение
[14:45:06] <Minoru> inPut: привет! А ты код пишешь?
[14:45:37] <inPut> Minoru: пописываю
[14:45:43] <ForNeVeR> inPut: а покажешь?
[14:45:45] <Minoru> ух ты! А покажешь?
[14:45:52] <ForNeVeR> Minoru: ,P
[14:46:04] <inPut> я так сразу не могу
[14:46:20] <inPut> стесняюсь
[14:46:31] <ForNeVeR> А мы тебя тогда мембернём!
[14:47:03] <Minoru> ForNeVeR: https://www.youtube.com/watch?v=6RLhSxLs5mQ&t=23m00s
[14:47:51] <Ender> тестю щас прогу
[14:47:53] <ɹǝɟılʍǝu> .ban ydtrdvtrvd@qip.ru
[14:47:54] <DeadBot> ɹǝɟılʍǝu: ok
[14:48:10] <Ender> http://pastexen.com/code.php?file=tHFG7FWEs2.txt определил 2 такие функции
[14:48:24] <Ender> и короче у меня вторая функция выводила ошибку.
[14:49:12] <Ender> Потому что то, что я показываю -- нормальные функции. А до этого у меня в memset out стоял после инкремента
[14:49:13] <Ender> кек
[14:49:23] <Ender> а я думал, я в логике где-то обосрался
[14:49:54] <ɹǝɟılʍǝu> portnov, \0
[14:50:02] <portnov> _o/
[14:51:36] <Ender> щас вместо красноречивого Not found запилю прям SEGMENTATION FAULT
[14:51:49] <Ender> красиво будет
[15:01:17] <ForNeVeR> Ender: segmentation fault - это вполне конкретная ошибка доступа к памяти. Если код на твоём языке на самом деле этой ошибки не вызывает - я не считаю правильным выводить такой текст.
[15:02:37] <Ender> http://www.fontanka.ru/2016/05/29/027/?utm_source=novapress
[15:03:18] <Ender> ForNeVeR, в контексте нет переменной, а пользователь её хочет.
[15:03:19] <Ender> а её нет
[15:03:24] <Ender> это сегфолт?
[15:03:28] <ForNeVeR> Нет.
[15:03:34] <Ender> вылез за границы массива -- это сегфолт?
[15:03:37] <ForNeVeR> Ты знаешь, что такое сегфолт.
[15:04:07] <ForNeVeR> И сегфолт не имеет ничего общего с этими твоими ошибками.
[15:04:13] <ForNeVeR> Ты написал менеджер памяти?
[15:04:19] <Ender> ~_~
[15:05:15] rafaelrs зашёл в конференцию
[15:06:33] <Ender> ладно
[15:06:43] <Ender> буду писать что-то вроде Index out of bounds.
[15:10:58] m4n71k0r зашёл в конференцию
[15:12:22] <kpecmuk> ну обращайся если что =)
[15:12:59] <kpecmuk> у меня nul pointer exception хорошо выходят =)
[15:15:53] <horta hell> @tsoding твитит: Made #Rust portmidi bindings work on #NixOS using separate Dev Environment https://t.co/n45YyOoPzO Hope to show everything on today's stream
[15:16:39] <horta hell> @tsoding твитит: More on #NixOS Development Environments if anyone is interested https://t.co/LQXzkFW2JF Pretty cool stuff
[15:21:59] <ɹǝɟılʍǝu> чпок
[15:33:21] <Ender> а я бы постримил бы то что я щас делаю. Но у меня комп на 5-10 минут виснет при конпиляции, ничего с ним делать не могу, кек
[15:33:44] inPut вышел из конференции
[15:33:47] <Ender> а 2500кбпс кодировать, так воще ппц
[15:34:49] <ForNeVeR> Стримить, как ты 10 минут компилируешь код.
[15:34:56] <Minoru> у тебя настолько большой проект, или билд-система настолько тупа?
[15:34:58] <Minoru> Ender:
[15:35:07] <ForNeVeR> Minoru: у него там 1200 строк.
[15:35:18] <horta hell> @tsoding твитит: RT @ferristweetsnow: The 9th episode of my n64 emulator series is up! :) https://t.co/fVvvQwahWR
[15:35:25] <Minoru> дык это на пару секунд всего, ForNeVeR
[15:35:26] <ForNeVeR> И ещё boost::spirit впридачу :3
[15:35:35] <Minoru> а, буст. Окей
[15:35:39] <m4n71k0r> шпирит это да)
[15:35:41] <ForNeVeR> Minoru: ну, на эндеровском пентиуме это чото тормозит :D
[15:35:43] <m4n71k0r> хотя ... нет
[15:35:59] <m4n71k0r> нужен Fusion
[15:36:26] <ForNeVeR> Phoenix'а должно быть достаточно.
[15:37:32] <Ender> core i7-2670qm
[15:37:45] <Ender> загрузка цопе - 15-20 процентов
[15:37:47] <Minoru> 60-е годы: народ качает навык проектирования программ на бумажке, потому что мейнфреймы — ресурс дорогой, и отлаживать «наживую» слишком дорого
2010-е годы: народ качает навык проектирования программ на бумажке, потому что компиляция — процесс долгий, и отлаживать «наживую» слишком дорого
[15:37:48] <m4n71k0r> парсер на стейт машине на Boost.MSM =)
[15:37:53] <Ender> а вот оператива вся засрана.
[15:39:31] <Ender> qi, phoenix и variant
[15:39:41] <Ender> pbd файл давеча гиг весил.
[15:39:49] <Ender> но я почистил, щас 200 метров.
[15:40:13] <Ender> pdb блин
[15:40:19] <ɹǝɟılʍǝu> Ender, собирай с -j100
[15:40:29] <Ender> а чо ето?
[15:40:38] <Ender> а
[15:40:43] <Ender> а я знаю чё ето.
[15:40:58] <Ender> -j9 тогда уже.
[15:40:58] <ɹǝɟılʍǝu> А ещё можно с -bj2000
[15:41:05] <uggur> сегодня вечером тимлид собрал команду в кафе и мы рассказывали о своих первых компьютерах
[15:41:11] <uggur> *вчера (:
[15:41:23] <uggur> это так прогательно :3
[15:41:39] <Ender> хотяяяя. а, это, -j опция это для gcc же
[15:41:51] <Ender> а у меня msvc
[15:42:26] <Minoru> -j — это опция для make
[15:42:37] <Minoru> хотя некоторые другие штуки её тоже понимают
[15:43:28] <Minoru> > -b, -m
> These options are ignored for compatibility with other versions of make.
ɹǝɟılʍǝu, что ты советуешь такое?
[15:43:44] <ɹǝɟılʍǝu> Minoru, ох
[15:43:55] <ɹǝɟılʍǝu> Плоских пошлых шуток не понимаешь))
[15:44:07] <Minoru> ох
[15:44:13] <Minoru> теперь дошло
[15:44:17] <ɹǝɟılʍǝu> xD
[15:47:25] <gsomix> uggur, и какой у тебя был первый компьютер?
[15:50:01] <ɹǝɟılʍǝu> gsomix, фуррёвый
[15:52:12] <gsomix> Minoru, как твои дела?
[15:52:51] <uggur> gsomix: я уж не упомню; по-моему что-то на i80386 с M$-DOS
[15:52:58] <gsomix> ForNeVeR, "we are in F#, not in Haskell. We do have syntax, not just functions." Лол.
[15:53:22] <ForNeVeR> gsomix: вне контекста фраза мне не вполне понятна.
[15:53:47] <uggur> ɹǝɟılʍǝu: тогда у меня не было ни интернетов, ни телнета :Ь
[15:53:58] <uggur> ни фидо
[15:54:27] <Minoru> gsomix: лучше чем вчера! В абсолютных величинах уже дошло до «нормально». Я даже знаю, чему хочу посвятить сегодняшний день
[15:55:55] <gsomix> ForNeVeR, в соседнем чате кто-то пытался нагородить решение через Seq и заблудился. Ему посоветовали использовать for ... in ... и написали вот эту фразу.
[15:56:12] <ForNeVeR> В соседнем - это в каком?
[15:56:35] <gsomix> ForNeVeR, в соседней вкладке. .__. Слакочат.
[15:56:39] <ForNeVeR> А.
[15:57:25] <gsomix> ForNeVeR, кстати, там какие-то нытики сидят. Правда, они и код пишут, и инфраструктуру развивают.
[15:57:43] <gsomix> Но это не мешает им ныть о состоянии компилятора F#, например.
[15:58:02] <gsomix> Или о .Net Core. .__.
[16:05:02] ckorzhik вышел из конференции
[16:10:15] <m4n71k0r> вот что надо делать с нытиками http://cs8.pikabu.ru/post_img/2016/05/28/10/1464458197181174618.webm
[16:10:50] kpecmuk вышел из конференции
[16:19:12] <Ender> заебись, что я отладку запилил.
[16:27:01] superka вышел из конференции: Replaced by new connection
[16:27:01] superka зашёл в конференцию
[16:29:24] <gsomix> ForNeVeR, я тут подумал, что большую часть point-wise operations для матриц можно в дотнете переписать через IEnumerable и LINQ.
[16:29:45] <gsomix> Автоматически получив ленивость для выражений с матрицами.
[16:30:04] sss|zombie зашёл в конференцию
[16:30:31] <gsomix> И возможность использовать http://nessos.github.io/LinqOptimizer/
[16:30:39] eaeee зашёл в конференцию
[16:30:39] eaeee вышел из конференции
[16:30:44] <ForNeVeR> gsomix: к сожалению, LINQ (особенно вкупе с ленивостью) очень плохо поддаётся оптимизации на SIMD и подобных аппаратных штуках.
[16:31:15] <ForNeVeR> А вот как оно будет работать с этой штукой - надо посмотреть ):
[16:32:58] <ForNeVeR> gsomix: очень интересная штука, спасибо за ссылку!
[16:37:31] kpecmuk зашёл в конференцию
[16:37:42] <Minoru> у меня знакомый дотнетчик уверял, что LINQ тормозит. Там всё правда сильно плохо?
[16:38:12] Graf зашёл в конференцию
[16:38:27] Graf вышел из конференции
[16:38:30] superka вышел из конференции: Logged out
[16:38:35] superka зашёл в конференцию
[16:41:46] <ForNeVeR> Minoru: а ленивые списки тормозят?
[16:44:15] <Minoru> то есть ты намекаешь, что люди просто не к месту LINQ юзали?
[16:44:25] <Minoru> может быть. Я их код не читал
[16:44:53] <ForNeVeR> Minoru: нет, я ни на что не намекаю. Я понадеялся на твою компетентность и на то, что ты в итоге сам ответишь на собственный вопрос.
[16:45:36] <ForNeVeR> Minoru: я не самый большой специалист в ленивых списках, но я слышал, что для быстродействия иногда приходится делать их строгими (и не только списки, а другие штуки тоже).
[16:45:46] <Ender> вроде нормально массивы с функциями туда-сюда работают. Надо теперь попробовать хвостовую рекурсию запилить.
[16:46:01] <ForNeVeR> Собственно, относительно LINQ такая же история. Ленивость вносит оверхед, который не всегда желателен.
[16:46:42] <Ender> Я думаю, она у меня не работает из-за того, что я имена криво переношу. Ну, имена массивов щас нормально переносятся, а вот имена переменных я чёт не понимаю сам пока, что я блять написал.
[16:46:49] rexim зашёл в конференцию
[16:47:14] <Ender> memset и memcpy я на своём языке реализовал, остался факториал.
[16:55:31] <gsomix> Minoru,
[16:55:40] <gsomix> Minoru, звучит как провокация. :)
[16:56:34] <gsomix> "у меня знакомый джавист уверял, что Java тормозит. Там всё правда сильно плохо?"
[16:56:48] <gsomix> "у меня знакомый хаскелит уверял, что Haskell тормозит. Там всё правда сильно плохо?
[16:56:59] <m4n71k0r> gsomix: ДА ТАМ ПИЗДЕЦ КАК ВСЁ ПЛОХО!
[16:57:41] <m4n71k0r> Minoru: займи 10 килобаксов, хочу линзу в виде котика
[16:58:04] <Minoru> gsomix: нет, это был искренний вопрос. Собственно, ответа Форневера мне достаточно
[16:58:41] <m4n71k0r> иммутабельность тормозит
[16:58:45] <m4n71k0r> ленивость тормозит
[16:59:15] <Minoru> расшевелили Мантикора, теперь аж до вечера бухтеть будет :)
[16:59:18] <m4n71k0r> аконыч вон говорил
[16:59:23] <m4n71k0r> я тут не при чём
[16:59:58] <m4n71k0r> и фудыч вон говорил, что ленивый х-ль тоже тормозит
[17:00:16] <gsomix> Minoru, ну, он ответил очевидную вещь, которую и ты, как пользователь ленивого языка, должен понимать. :(
[17:00:20] <m4n71k0r> я не буду манипулировать всякими там абстракциями типа "знакомы программист"
[17:00:39] <gsomix> Поэтому я подумал, что это провокация.
[17:00:51] <m4n71k0r> жизнь - это провокация
[17:01:00] <rexim> Типичный гсомикс, как всегда, во всем видит провокации.
[17:01:23] <gsomix> rexim, еще и ты... =__=
[17:01:27] <m4n71k0r> rexim: мне кааца, что гсомяка совсем недавно узнал про тырнетики...
[17:01:31] <rexim> gsomix: чтд
[17:01:37] <gsomix> Да идите вы нахуй.
[17:01:48] <rexim> Хренасе
[17:01:48] <Minoru> gsomix: ну я вообще не знал, что в LINQ есть лень
[17:01:50] <m4n71k0r> нет, ты
[17:01:54] <rexim> На пустом месте нахуй посылают
[17:01:59] <gsomix> Чего в разговор-то влезли? .__.
[17:02:01] <Minoru> gsomix: я думал, это просто лямбдочки, ФВП и всё такое прочее
[17:02:10] <m4n71k0r> gsomix: какой разговор?
[17:02:13] <m4n71k0r> я вижу срачик
[17:02:19] <m4n71k0r> люблю срачики
[17:02:28] <rexim> gsomix: расслабься, это же цодингтим
[17:02:30] <rexim> Тут всегда так
[17:02:32] <m4n71k0r> научная полемика...бггг
[17:03:24] <m4n71k0r> gsomix: ты там полезное что-нибудь уже начал писать или всё ещё диплом?
[17:03:42] <gsomix> m4n71k0r, да, код на работе.
[17:04:27] <m4n71k0r> Ender: скинешь потом тырпретатор свой, я поломаю его немного, а то ты код не даёшь смотреть, а я не помню твой хитжаб, а по запросу "репа Толяна" ничего не находится
[17:04:50] <Minoru> m4n71k0r: да ты чо! На ГитХаб сходи, Гсомикс недавно некий fender опубликовал
[17:04:50] <m4n71k0r> фигасе сколько противопоставлений, аж перечисления
[17:05:14] <m4n71k0r> Minoru: а стратакастер когда?
[17:06:24] <m4n71k0r> Ender: ты есть цоднгтиме на гитхабе?
[17:06:47] <Minoru> m4n71k0r: в следующий раз, наверное. Не всё же сразу, дай человеку вырасти!
[17:07:07] <gsomix> "вырасти"
[17:07:07] <m4n71k0r> Minoru: вырасти как ты?)
[17:07:13] <rexim> Minoru: а я вчера так чай и не попил. :(
[17:07:21] <gsomix> Збс формулировка.
[17:07:22] <rexim> Так лень было идти на кухню...
[17:07:33] <m4n71k0r> rexim: а ты бы пополз)
[17:07:40] <rexim> m4n71k0r: я пытался!
[17:07:47] <m4n71k0r> но заснул?
[17:07:50] <rexim> Ага :)
[17:07:50] <m4n71k0r> в коридоре?
[17:07:53] <rexim> Ну
[17:07:56] <m4n71k0r> вот же
[17:08:21] <m4n71k0r> ты из себя верёвки вьёшь
[17:08:29] <m4n71k0r> а на работе также выдыхаешься?
[17:08:51] <rexim> Я на работе вдыхаюсь
[17:08:55] <rexim> А дома выдыхаюсь
[17:09:05] * rexim ахахахаха
[17:10:49] <m4n71k0r> а что случилось с сервисом фортунок?
[17:11:22] <rexim> m4n71k0r: не фортануло
[17:12:01] <m4n71k0r> Ender: это ты? https://github.com/EnderEyre/enderlurns
[17:12:43] <Ender> да
[17:12:55] <Ender> Бля, я забыл что у меня там есть аккаунт
[17:12:56] <m4n71k0r> Ender: почему там нет твоего тырпретатора?
[17:12:58] <Ender> хех
[17:13:07] <m4n71k0r> как мне тебя ревьюить?
[17:13:10] <Ender> ПРИВАТНЫЙ ПРОЕКТ, АГА
[17:13:14] <m4n71k0r> ппц
[17:13:28] <Ender> да я запилю туда, конечно же.
[17:13:44] <Ender> А если я диплом умудрюсь получить, запилю в свой язык лямбды.
[17:13:59] <m4n71k0r> Ender: потому что это можно и молодёжно?
[17:14:04] <Ender> да
[17:14:06] <m4n71k0r> модно*
[17:14:07] <Ender> только поэтому
[17:14:31] <rexim> Чпочно, смачно, заебачно!
[17:14:37] <Ender> хех)
[17:15:08] <m4n71k0r> rexim: ты мне нужен на опыты, чтобы я смог придумать вакцину от чпок-эпидемии >:(
[17:15:24] <rexim> m4n71k0r: нит!
[17:15:37] <m4n71k0r> небось на работе у тебя все чпокают
[17:15:45] * rexim убежал в припрыжки хихикая
[17:16:02] <rexim> m4n71k0r: кстати, да :)
[17:16:02] * m4n71k0r пошёл искать припрыжки
[17:16:08] <rexim> Всех зарахил.
[17:16:13] <Ender> http://pastexen.com/i/CBcQPZ7bmT.png
[17:16:16] <Ender> нихуясе
[17:16:25] <Ender> у меня на твиче столько фоловеров нету, сколько тут
[17:16:26] <rexim> xD
[17:16:32] <Ender> ща зафолловлю вас, посоны
[17:16:38] <m4n71k0r> ты популярен!
[17:16:42] <rexim> Мантикор четкий
[17:16:46] <rexim> Дерзки
[17:17:27] <m4n71k0r> я там салатик ел
[17:17:32] <m4n71k0r> оливьешечку
[17:17:37] <rexim> А, ну это все объясняет :)
[17:17:43] <Ender> http://pastexen.com/i/SAY1hzdAnq.png
[17:17:45] <Ender> готово
[17:17:48] <Ender> Нашол пороль
[17:18:11] <rexim> Ender: востановил чтоли?
[17:19:38] <Ender> он в акке фаерфокса валялся с 1994го года.
[17:19:45] <rexim> Ender: о круто! Ты меня зафолловил. Спасибо! Теперь я тебе радостно засру всю ленту своими плюсиками! ^_^
[17:19:56] <Ender> блять
[17:20:18] <Ender> 29.05.2016 16:23:16 paulfertser:
Только ты не забывай, что лямбда -- не просто анонимная функция. Она должна замыкать в себя локальные переменные.
[17:20:32] <rexim> -_-
[17:20:49] <rexim> Никому она ничего не должна.
[17:20:57] <rexim> Что хочет, то и делает.
[17:21:21] <ForNeVeR> Ещё один чувак путает лямбды, анонимные функции и замыкания.
[17:21:34] <ForNeVeR> // ещё кто-то кроме меня, я имею в виду ,)
[17:21:59] <rexim> ForNeVeR: лямбды - это сочно, смачно, заебачно! \о/
[17:22:20] <ForNeVeR> rexim: а замыкания?
[17:22:33] <rexim> А замыкания еще и хуячно
[17:24:41] <Ender> https://geektimes.ru/post/276542/
[17:24:44] <Ender> там пригорело
[17:29:04] uggur вышел из конференции: Replaced by new connection
[17:29:19] uggur зашёл в конференцию
[17:31:41] <Minoru> gsomix: что не так с «вырасти»? (Я уверен, что ты понял отсылку к производителю гитар и одной из их известнейших моделей, поэтому не знаю, что ты мог такого увидеть в моей фразе).
[17:31:53] <Minoru> rexim: не попил вчера — наверстаешь сегодня1
[17:32:45] <m4n71k0r> в плюсах просто: захватывает - замыкание, не захватывает - анонимная функция
[17:34:08] <gsomix> Minoru, ну, давай ты скажешь, что имел в виду, а я скажу, что не так.
[17:34:57] <m4n71k0r> Ender: а кроме нокии никто у финнов телефоны не делал?
[17:35:09] <m4n71k0r> нахер было нокию продавать ваще?)
[17:36:11] <ForNeVeR> m4n71k0r: ты так говоришь, как будто её прям правительство Финляндии продало.
[17:36:29] <m4n71k0r> не, но правительство могло купить)
[17:36:35] <Minoru> gsomix: я имел в виду, что между началом работы (основанием компании Fender) и достижением известных результатов (выпуска знаменитой Fender Stratocaster) должно пройти время, в течение которого развиваются навыки, необходимые для достижения того самого результата
[17:36:39] <ForNeVeR> Руководство решило, что будет выгодно её продать - вот и продало. Вполне возможно, что это было верным решением для того, чтоб побольше навариться.
[17:37:09] <ForNeVeR> А, собственно, сейчас у финнов вообще ситуация замечательная должна быть. Куча кадров освободилась, можно новую Нокию из них собрать.
[17:37:38] <m4n71k0r> ForNeVeR: а само производство вообще было перемещено в Венгрию
[17:38:08] <ForNeVeR> Ну а кадры-то в Финляндии освободились. Что они там тогда делали?
[17:38:16] <m4n71k0r> вот вики читаю, в 2012 году было первое сокращение
[17:38:24] <ForNeVeR> Просто на жопе сидели, бездельники?
[17:38:33] <ForNeVeR> Тогда их правильно выгнали. Надо было ещё выпороть.
[17:38:59] <m4n71k0r> ForNeVeR: тебе бы лишь бы выпороть!
[17:39:07] <m4n71k0r> отец семейства прям
[17:39:54] eaeee зашёл в конференцию
[17:40:17] <eaeee> привет
[17:40:33] <eaeee> если у меня в классе есть поле UUID
[17:40:57] <eaeee> и я хочу генерить его каждый раз, когда меняется состояние полей класса, это норм?
[17:41:14] <Ender> m4n71k0r, суть в том, что у правительства пригорело. И кому бы там телефоны делать?
[17:41:20] <eaeee> или затратно?
[17:41:24] <ForNeVeR> eaeee: мне это видится странным. Зачем?
[17:41:28] <Ender> Я просто не помню ничего, лол.
[17:41:45] <eaeee> ForNeVeR: чтобы знать, что состояние не изменилось по этому UUID
[17:41:54] <Ender> Minoru, страт охуевше неудобное говно. Я не представляю, чему всякие мальмстины это жрут
[17:42:07] <eaeee> ForNeVeR: сравнил его и узнал сразу
[17:42:14] <eaeee> хм
[17:42:15] <ForNeVeR> eaeee: дак а если оно туда изменилось, а потом обратно изменилось?
[17:42:30] <ForNeVeR> У тебя получится два новух UUID'а, никак толком не сравнишь.
[17:42:41] <Minoru> Ender: я не гитарист, ничо не знаю. Гиллмор в Pink Floyd збс на ней играл, больше меня ничего не интересует. Я слушатель.
[17:42:51] <eaeee> ForNeVeR: а как быть?
[17:43:05] <rexim> Minoru: а я чпокатель!
[17:43:07] <ForNeVeR> eaeee: ну, есть же стандартные equals / hashCode, чем они не устроили?
[17:43:09] <Minoru> eaeee: юзай хеш, а не UUID
[17:43:15] <Ender> Успех этой гитары скорее всего был из-за её цены.
[17:43:39] <ForNeVeR> Minoru: уникальный хеш сам по себе сложно построить. Обычно его используют в паре с equals.
[17:43:42] <eaeee> ForNeVeR: я переопредлил equals, но подумал такой метод тоже норм. или не?
[17:43:47] <Minoru> Ender: а, ну вот этого я не знал. Я вообще о ней знаю только назание, что она популярна и что на ней Гиллмор играл
[17:44:04] <Ender> Может гилмор на суперстрат потом перекочевал. он удобнее будет.
[17:44:11] <ForNeVeR> eaeee: ну стандартные же есть :( И надо переопределять обоих: equals+hashCode. Никогда не переопределяй по одному!
[17:44:25] <ForNeVeR> И с мутабельными классами будь осторожен.
[17:44:30] <rexim> Мне тут курсера говорит "Learn Python, Agile, and R "
[17:44:34] <gsomix> Minoru, значит, я понял правильно. Это выглядит как оценка навыков по наличию или отсутствию кода на гитхабе. Типа "вырастет, будут и нормальные проекты на гитхабе"...
[17:44:37] <ForNeVeR> А то у тебя хэши прям в контейнере мутируются, и будет беда.
[17:45:37] <Ender> у меня хоть и не такая большая рука, но я упираюсь неудобно очень мезинцем в volume при палм мьюте. А ДЛЯ ДЖЕНТА ОНА НЕ ПРЕДНАЗНАЧЕНА. у мальмстина клешня больше моей, он мезинец как-то хитро за ручку volume закидывает и играет. меня это бесит.
[17:45:45] <Minoru> gsomix: а. Ну, нет. Я просто продолжил мантикоровскую шутку о названии, только и всего
[17:45:59] <Ender> У меня дома чешский закос под леспол воще. мне вкусно.
[17:46:01] <rexim> Ух какие провокации!
[17:46:14] <gsomix> Успокойте миксера.
[17:46:35] <Ender> rexim, Agile -- охуенные гитары, кстати
[17:46:39] <rexim> Да, налейте мне молочка
[17:46:47] <rexim> Ender: круто!
[17:47:02] <rexim> Ender: а есть гитары Scrum? %)
[17:47:02] <Ender> Какого тебе молочка, у тебя авка еле вмещается в 50 килобайт.
[17:47:12] <rexim> Ender: :(
[17:47:38] <rexim> Ender: ты меня провоцируешь!
[17:47:42] <Ender> про scrum не слышал ;D
[17:47:50] <Ender> нет, не провоцирую
[17:47:50] <rexim> Это оскарбляет мои провокационные чувства!
[17:47:56] <Ender> ЧТО БЛЯТЬ
[17:47:56] <gsomix> =__=
[17:48:01] gsomix вышел из конференции
[17:48:33] <Ender> надо факториал написать.
[17:48:35] <Ender> ~_~
[17:48:55] <Ender> Я сижку искал и чаёк делал. про факториал забыл совсем~_~
[17:49:05] <rexim> Ender: это типа твоя дипломная?
[17:49:06] <rexim> Факториал
[17:50:57] <Ender> дипломная язык. плюс текстовый редактор.
[17:51:03] <eaeee> ForNeVeR: у меня клиенты получают/передают данные. оно все завернуто в ConcurrentHashMap и может изменится. хотел сделать так, чтобы клиент точно понимал что работает с той версией данных, с которой хочет (хотя мб это излишне)
[17:51:08] <Ender> Я просто хочу, чтобы язык нормально работал
[17:51:20] <Ender> было бы круто, если бы в нём рекурсия адекватно работала
[17:51:21] <rexim> Ender: а текстовый редактор, типа, заточенный под этот язык?
[17:51:34] <Ender> ну вроде, да.
[17:51:39] <rexim> Ender: а можно тупо интеграцию с атомом или емаксом сделать?
[17:51:53] <rexim> Или даже с эклипсом
[17:52:00] <rexim> У них для всего это инфраструктура полуш
[17:52:15] <ForNeVeR> eaeee: а, вот оно чо! Это называется optimistic concurrency control. Почитай про это больше, там есть интересные идеи. Да, можно использовать UUID в качестве ключа, но есть и чуваки, которые выбирают какой-нибудь "естественный" ключ, типа даты последней модификации объекта.
[17:52:17] <Ender> Я запилю туда из примера документации кути, и две кнопки. одна зовёт тырпретатор с путём к файлу. вторая путь к файлу и -v
[17:52:28] <rexim> Лол
[17:52:30] <rexim> Ну ок %)
[17:52:55] <Ender> интеграция с атомом конечно оверугарно было бы
[17:52:58] <ForNeVeR> rexim: интеграцию с линуксом!
[17:53:02] <Ender> Я бы сам прям программировал.
[17:53:05] <rexim> ForNeVeR: ОГО!
[17:53:15] <rexim> ForNeVeR: какие у вас революционные идеи! %)
[17:53:18] <Ender> кстати мой проект запустится на линуксе.
[17:53:50] <ForNeVeR> rexim: у меня провокационные идеи! А вот у вас, товар'ищ, явно контр'пр'овокационные!
[17:53:56] <rexim> О_О
[17:54:03] <Ender> rexim, хош дам кампельнуть? %)
[17:54:03] <rexim> Да как вы смеете!
[17:54:12] <ForNeVeR> Смеем, голубчик, смеем!
[17:54:19] <ForNeVeR> Партия вас насквозь видит!
[17:54:31] <rexim> Да я буду вас на гитхабе провоцировать!
[17:54:33] <eaeee> ForNeVeR: спасибо. можно время модификации хранить, да
[17:54:36] <rexim> Своими пулл реквестами!
[17:54:37] * ForNeVeR забирается на броневичок и уезжает в закат.
[17:54:43] <Ender> lol
[17:55:09] <rexim> В погоню!
[17:55:24] * rexim тыгыдым тыгыдым тыгыдым...
[17:56:25] <rexim> Охблять
[17:56:27] <rexim> Уже 8
[17:56:29] rexim вышел из конференции
[17:57:08] <ForNeVeR> $send rexim https://www.youtube.com/watch?v=wvbFxHkxR5w
[17:57:09] <horta hell> ForNeVeR: Сообщение помещено в очередь.
[18:02:06] unclechu зашёл в конференцию
[18:05:41] gsomix зашёл в конференцию
[18:05:59] <gsomix> О, миксер свалил. Чудно.
[18:06:46] <gsomix> Ender, все мои любимые гитаристы играют или играли на стратах. :(
[18:10:22] <gsomix> Все эти гилморы, хендриксы, беки..
[18:15:46] eaeee вышел из конференции
[18:17:37] reximorning зашёл в конференцию
[18:17:49] <reximorning> gsomix: гсомиксяша! ^_^
[18:20:31] <kpecmuk> $pet stats
[18:20:33] <horta hell> kpecmuk:
Кличка: Чпокер
Здоровье: 58
Сытость: 10
Возраст: 42 часов
[18:20:38] <kpecmuk> $pet feed
[18:20:39] <horta hell> kpecmuk: Чпокер, покосившись, брезгливо жуёт подачку. Вы зарабатываете 1PTC.
[18:21:08] <reximorning> kpecmuk: кпецмук! :3
[18:21:50] <kpecmuk> reximorning: таких н е знаю
[18:24:18] <reximorning> kpecmuk: хм... сорри! Обознался значит...
[18:24:45] <ForNeVeR> kpecmuk: но ведь это ты и есть!
[18:25:01] <kpecmuk> reximorning: хз. я не уверен
[18:25:17] eaeee зашёл в конференцию
[18:25:19] <kpecmuk> reximorning: че сегодня опыть импортный стрим ?
[18:25:31] <reximorning> kpecmuk: извини! :(
[18:25:51] <kpecmuk> печалька
[18:26:11] <reximorning> Могу на следующей неделе приватный цодингтимный на русском по чему-нибудь отличному от Раста запланировать :)
[18:26:34] <ForNeVeR> reximorning: про кложуру!
[18:26:34] <eaeee> ForNeVeR: а что делают в случае если нужно игнорить поля модельки (json ignore), но делать это динамически? т.е в разных случаях по-разному игнорить..
[18:26:54] <reximorning> ForNeVeR: я думал, по джаве. Крестик хотел вроде джаву или что-то джава подобное.
[18:27:00] <ForNeVeR> eaeee: делай несколько моделей.
[18:27:09] <ForNeVeR> reximorning: ну, это тоже можно!
[18:27:13] <eaeee> ForNeVeR: мне от этого становится грустно
[18:27:40] <reximorning> kpecmuk: ForNeVeR: ок. Тогда я подумаю, когда лучше всего это запланировать и вас оповещю. ^_^
[18:28:00] <kpecmuk> reximorning: вот это уже разговор
[18:28:49] <reximorning> :)
[18:28:58] superka вышел из конференции
[18:29:48] <Ender> http://pastexen.com/i/clMRdcZPZk.png
[18:29:49] <Ender> сука
[18:30:50] <eaeee> не ругайся
[18:30:51] <Ender> gsomix, John Browne, Tosin Abasi, John Petrucci -- ни одного стратокастера. Суперстраты, да.
[18:31:08] <Ender> eaeee, так оно повисло нахуй
[18:31:18] sss|zombie вышел из конференции: This participant is kicked from the room because he sent an error message to another participant: remote-server-not-found
[18:31:53] <gsomix> Ender, мы просто слушаем разных гитаристов, да.
[18:32:41] <Minoru> а я, получается, слушаю и тех, и других
[18:32:44] <Minoru> (Петруччи крутой!)
[18:32:52] <Ender> gsomix, И чтоб ты знал, говоря о Хендриксе, У НЕГО ПРОСТО НЕ БЫЛО ВЫБОРА. Лес Пол просто очень поздно просрался. Я думаю, этот нигга выбрал бы Лес Пол.
[18:33:30] sss|zombie зашёл в конференцию
[18:33:38] <Ender> И кстати телек вроде раньше страта появился.
[18:33:51] <Ender> Вроде именно на телеке ниггер играл.
[18:33:56] <Ender> А вот телек уже неплох.
[18:35:06] <Ender> а нет. на страте.
[18:35:13] <Ender> только он его переворачивал кек.
[18:35:26] <Ender> Но так да, возможно если его перевернуть, он будет удобнее :D
[18:35:46] <gsomix> Ender, не понял. Лес пол уже был,
[18:35:54] <gsomix> И играл он на страте.
[18:36:47] <Ender> http://pastexen.com/i/ycAIwXjGj7.png
[18:36:53] <Ender> ФлайнВи
[18:36:56] <Ender> надо же.
[18:39:12] <gsomix> Ender, https://en.wikipedia.org/wiki/List_of_Stratocaster_players
[18:39:15] <gsomix> Смотри, сколько крутых чуваков.
[18:41:05] <gsomix> Поэтому тезис о неудобстве мне кажется несостоятельным.
[18:42:21] <gsomix> О неудобстве для игры в рамках каких-то жанров -- наверное, да.
[18:50:59] <Ender> палммьют не поиграешь из-за громкости, джент -- из-за мензуры, кек
[18:51:02] <Ender> отличная гитара
[18:51:20] <Ender> то-то хендрикс её переворачивал
[18:51:22] <Ender> :D
[18:51:26] <gsomix> Ну, этим музыка не ограничивается.
[18:51:42] <Ender> конечно! есть же ещё подкасты monstercat!
[18:55:54] <Ender> http://pastexen.com/i/OrNq3CbUs1.png
[18:55:57] <Ender> ~_~
[18:56:03] <Ender> как он сука так посчитал
[19:00:02] <reximorning> Мопстерсат!
[19:00:37] kpecmuk вышел из конференции: Replaced by new connection
[19:00:38] kpecmuk зашёл в конференцию
[19:01:22] <Ender> миксер, почему у меня в a -- 40.
[19:01:30] <Ender> не 60, а 40.
[19:01:56] <Ender> я бы понимал, что происходит, если бы там было 60
[19:02:02] <Ender> но 40 -- я отказываюсь.
[19:02:18] <Ender> должно быть 120.
[19:02:26] <Ender> но хотя бы 60 бы получить.
[19:02:26] <reximorning> Ender: потому что ты чпок
[19:02:33] <Ender> всего-то.
[19:08:22] <Minoru> а мне одному за смайлики на ГитХабе — везде, кроме ишшуев и комментариев — хочется ругаться и оскорблять?
[19:09:12] <m4n71k0r> Minoru: а где там ещё можно смайлики использовать? В коде?
[19:09:17] <gsomix> Может тебе еще гифки не нравятся?
[19:09:20] <m4n71k0r> а что ты скажешь про жопосмайлики?
[19:09:27] <m4n71k0r> (_+_)
[19:10:15] <ForNeVeR> m4n71k0r: и ты эдакое непотребство в коде используешь?
[19:11:14] <ForNeVeR> Неудивительно, что кому-то хочется тебя за это оскорбить!
[19:11:26] <Minoru> m4n71k0r: в коммит-сообщениях. В описаниях проектов.
[19:11:32] reximorning вышел из конференции
[19:11:45] <Minoru> gsomix: гифки в описаниях и коммитах?
[19:11:58] <gsomix> Ну, в описании, например.
[19:12:21] <Minoru> gsomix: описание — это вот та одна строчечка под названием. Какие там гифки, ну?
[19:12:32] <gsomix> Я не силен в терминологии.
[19:12:37] <gsomix> Простите!
[19:12:43] <gsomix> Я думал, что описание -- это README.
[19:13:15] <Minoru> а, нет. В README гифки ещё можно, как и смайлики
[19:13:59] <Ender> у меня опять отладчик повис
[19:14:43] <gsomix> Minoru, в PR.
[19:15:18] <gsomix> Прекрасное место для смешной гифки.
[19:15:21] <m4n71k0r> Minoru: у меня картинка в описании проекта(
[19:16:41] <m4n71k0r> а, не, то у меня ридми
[19:16:43] <m4n71k0r> фух
[19:17:15] <m4n71k0r> ForNeVeR: да я разную непотребщину использую. У меня есть код, в котором очень много вопросительных знаков, например
[19:17:21] <Minoru> gsomix: > кроме ишшуев и комментариев
[19:17:47] <Minoru> gsomix: я использую эту цитату, чтобы отвертеться, мол, PR — это такой комментарий
[19:17:58] <Minoru> вообще я о PR почему-то думаю как о специальной форме ишшуев
[19:18:06] <Minoru> наверное, потому, что у них нумерация сквозная
[19:18:20] <ForNeVeR> m4n71k0r: а у меня есть вот такой кот!
if (value.HasValue) _value = value.Value;
[19:21:18] <gsomix> ForNeVeR, а если нет?
[19:21:31] <ForNeVeR> gsomix: если нет что?
[19:21:39] <gsomix> ForNeVeR, значения.
[19:21:51] <ForNeVeR> А. Ну не знаю. Наверное, если нет - то и не надо :)
[19:22:21] <ForNeVeR> Я не знаю в C# оператора "не присваивать", поэтому блок else не написан.
[19:22:21] <gsomix> ForNeVeR, ну, можно какой-нибудь GetOrDefault написать, например.
[19:23:47] <m4n71k0r> а, это сишарп
[19:24:14] <m4n71k0r> написать экстеншн метод для всего, что угодно?
[19:24:19] <gsomix> Кстати, а в каком языке при всем желании из Optical нельзя даже попытаться достать значение без паттернматчинга со всеми кейсами?
[19:24:34] <ForNeVeR> Что такое Optical?
[19:24:35] <gsomix> *Optional
[19:24:38] <m4n71k0r> оптикал... у вас профессиональная деформация)
[19:24:39] <ForNeVeR> А.
[19:24:43] <ForNeVeR> :D
[19:25:18] <m4n71k0r> какой смысл в таком опшонале?
[19:25:37] <ForNeVeR> m4n71k0r: скорее следует спросить, какой смысл в любом другом.
[19:31:31] <gsomix> Ну, просто optional должен спасать от NRE.
[19:32:08] <gsomix> Но если, например, у него все равно есть обычный метод get, то NRE может возникнуть там.
[19:32:58] <m4n71k0r> поэтому я и курю котлин
[19:33:16] <m4n71k0r> something?.get
[19:34:14] <m4n71k0r> жаль, что это ещё сырая студенческая поделка
[19:40:19] <Minoru> в шарпе тоже есть ?. емнип
[19:40:28] <Minoru> в C#, я имею в виду
[19:40:32] <Minoru> про остальные не знаю
[19:40:41] <Minoru> кроме F# есть ещё шарпы, кстати?
[19:40:51] <m4n71k0r> J#
[19:40:56] <ForNeVeR> J# мухахаха.
[19:41:20] <ForNeVeR> ω# ещё был.
[19:41:44] <Minoru> лол
[19:41:47] <ForNeVeR> А, не, то был Cω.
[19:42:06] <ForNeVeR> > It was formerly known as the codenames X#
[19:42:06] <Minoru> для сишников-омежек
[19:42:09] <Minoru> простите ._.
[19:42:29] <ForNeVeR> Я думаю, ещё парочку можно найти.
[19:42:34] <ForNeVeR> Но они уже малопопулярны.
[19:42:44] <Minoru> ну да, не то что F#!
[19:42:54] <ForNeVeR> Ну да, не то что F#.
[19:43:03] * ForNeVeR не воспринял сарказм.
[19:43:07] <Minoru> ладно
[19:43:11] <Minoru> тогда забей
[19:43:19] <Minoru> я все равно не могу объяснить, над чем конкретно смеюсь
[19:43:47] <ForNeVeR> Ну, в смысле, F# действительно намного популярней, чем те языки :)
[19:45:13] <Minoru> это понятно, я просто к тому, что F# сам по себе непопулярен. Но т.к. у меня нет более конкретных фактов, то см. предыдущее сообщение
[19:45:23] <ForNeVeR> Педовикия подсказывает, что есть также A# (Ada), L# (лисп), Lisp# ("Un-Armed Bear Common Lisp", и название охуительное), P# (это Пролог, и я бы взглянул), и некий "C#Prolog".
[19:46:02] <Minoru> у меня такое впечатление, что я этот вопрос раз в полгода задаю, но всё же: сейчас есть живые более-менее известные архитектуры, где байт — это не восемь, а больше или меньше бит?
[19:46:33] <Minoru> «живые более-менее известные» — это если как минимум две разных компании на этой архитектуре что-то построили, например
[19:46:49] <m4n71k0r> какой-нибудь ьухлый пидипи
[19:46:57] <m4n71k0r> в каком-нибудь углу кампуса
[19:47:03] <m4n71k0r> тухлый*
[19:47:21] <Minoru> ок, а не легаси
[19:47:25] <Minoru> s/$/?/
[19:48:51] <m4n71k0r> IBM System/370 тоже легаси?
[19:49:09] <m4n71k0r> подобие его наши делали, вроде бы
[19:49:37] <m4n71k0r> а...стоп... то не то
[19:49:44] <m4n71k0r> 26-битные целые числа
[19:50:19] <ForNeVeR> Minoru: квантовые компьютеры же!
[19:50:33] <Minoru> ForNeVeR: а там есть понятие байта?
[19:50:35] <ForNeVeR> Там сложно сказать, сколько состояний в кубите, но точно не два :)
[19:50:40] <Ender> блин. Я думал с рекурсией будет проще.
[19:50:53] <ForNeVeR> Minoru: ну хошь - вводи. Если б там был байт, то он был бы не восемь бит :)
[19:51:13] <Ender> вместо 300 получаю 150. почему? не знаю.
[19:58:48] <Ender> http://pastexen.com/i/Gwz6zPw59T.png
[19:58:56] <Ender> ЕБИСЬ ОНО КОНЁМ!!!!!!!!11
[19:59:13] rafaelrs вышел из конференции
[19:59:23] <Ender> s/КОНЁМ/ПОНЁМ/
[19:59:25] <horta hell> Ender: ЕБИСЬ ОНО ПОНЁМ!!!!!!!!11
[19:59:35] <m4n71k0r> сделай факториал 1900 и чтобы стек не закончился)
[19:59:50] <Ender> циклом изи.
[19:59:54] <Ender> хотя
[19:59:58] <Ender> нет, ты пиздобол.
[20:00:25] <Minoru> циклом тоже легко, если есть длинная арифметика ;)
[20:00:32] <Ender> есть.
[20:00:45] <Ender> У МЕНЯ ВСЁ ЕСТЬ КРОМЕ ЛЯБМД
[20:00:48] <m4n71k0r> ну сделай стек в рамке, я хз
[20:00:52] <m4n71k0r> пажжди
[20:00:58] <m4n71k0r> как всё?
[20:00:59] <Minoru> Ender: дык это тогда получается, что НИХУЯ У ТЕБЯ НЕТ.
[20:01:08] <Ender> ДА
[20:01:20] <m4n71k0r> а структурки простые будут?
[20:01:36] <m4n71k0r> или только массивы?
[20:01:42] <Ender> НА СКЛАДЕ КОНЧИЛИСЬ, НЕ ЗАВЕЗЛИ.
[20:02:29] <Ender> я не конимаю, почему если я вот то, что я делал assign передаю как параметр, он мне говно какое-то считает.
[20:02:45] <ForNeVeR> Я ему уже предлагал делать оптимизатор хвостовой рекурсии.
[20:03:12] <m4n71k0r> ForNeVeR: но... это тянет на диссер
[20:03:27] <ForNeVeR> Эт почему? ._.
[20:03:34] <m4n71k0r> или это топорный оптимизатор?
[20:03:45] <ForNeVeR> Само собой, я ему предлагал топорный.
[20:04:01] <ForNeVeR> С факториалом-то и топорный справится, если правильно факториал написать.
[20:04:04] <m4n71k0r> то есть, оно будет иметь некие паттерны и пытаться их применить
[20:04:32] <Ender> Я же вроде беру из объявления параметры, заношу их в новый контекст как locContext[it] = arguments[i]->execute();
[20:04:36] <ForNeVeR> Хотя не, факториал норм в любом случае. Это числа Фибоначчи надо хитро писать, чтоб работал хвостатый оптимизатор.
[20:05:05] <Ender> ForNeVeR, когда ты мне оптимизатор предлагал?
[20:05:19] <Ender> Я помню только ты сказал "а в хвостовую рекурсию ты не смог" и всё на этом.
[20:05:29] <Ender> Это значило писать какой-то оптимизатор?
[20:05:41] <Minoru> ForNeVeR: наивное n * fib (n-1) TCO тоже не починит
[20:06:23] <Ender> числа фибоначчи?
[20:06:26] <Ender> сек.
[20:07:43] <Minoru> s/fib/factorial/
[20:07:44] <horta hell> Minoru: F-rNeVeR: наивное n * factorial (n-1) TCO тоже не починит
[20:22:46] <gsomix> Minoru, а какой вариант не наивный?
[20:23:34] sss|zombie вышел из конференции
[20:23:43] <Minoru> gsomix: хвостовая рекурсия со счётчиком, или же цикл
[20:23:51] <Minoru> s/счётчиком/аккумулятором/
[20:23:53] <horta hell> Minoru: gs-mix: хвостовая рекурсия со аккумулятором, или же цикл
[20:24:02] <gsomix> Minoru, а ТСО не может это сделать?
[20:24:28] <Minoru> gsomix: нет, он оптимизирует только хвостовые вызовы. В наивном варианте ты на хвосте вызываешь умножение.
[20:24:58] <Minoru> об оптимизациях, котораые тебе в общем случае перепишут что-то типа наивной реализации факториала в версию с аккумулятором, я не слышал
[20:25:05] <gsomix> А, тю.
[20:25:49] <Minoru> ты о чём-то другом думал?
[20:26:18] <gsomix> Да.
[20:27:25] ckorzhik зашёл в конференцию
[20:40:18] <Minoru> > ForNeVeR deleted ForNeVeR/Dissertation
:-O
[20:44:33] <Ender> http://pastexen.com/i/VfrbG3Wp2B.png
[20:45:00] <Ender> http://pastexen.com/i/7up8CH82u9.png
[20:45:39] <Ender> Я бы может быть даже смог бы их в массив сложить.
[20:46:42] <Ender> можно завести ещё одну функцию, которая увеличивала бы лимит на десяточку, и если повторяется -- не заносить в массив.
[20:46:44] <Ender> кек
[20:54:20] <gsomix> Minoru, я задумался о том, что может быть на самом краю compute science есть какая-нибудь оптимизация рекурсия -> корекурсия.
[20:54:25] <gsomix> Но, кажется, нет.
[20:56:19] <Minoru> на краю computer science сидит синьйор, бьёт по рукам за бесконечный стек и переписывает с аккумулятором. Вся суть computer science в том, чтобы расширить компиляторы и подвинуть этого синьйора подальше от джуниоров
[20:56:42] <0xd34df00d> m4n71k0r: не ленивый хаскель тормозит, ленивый хаскель норм.
[20:56:54] <0xd34df00d> Тормозит чистый хаскель, иногда. Поэтому иногда надо что-то запихивать в ST.
[20:57:27] <m4n71k0r> хм, значит я всё перепутал
[20:57:34] <m4n71k0r> gsomix: НЕ ТОРМОЗИТ!
[20:57:47] <0xd34df00d> А ленивость сама по себе может тормозить только лишь потому, что в памяти накопится куча санков, которые будут эту самую память жрать, и GC будет работать менее эффективно. Это был единственный источник профита, когда я начал строго эвалюейтить всякую хуиту у себя в коде.
[20:58:38] <m4n71k0r> то есть, есть оверхэд по памяти?
[20:58:40] <0xd34df00d> Ну, короче, GC в gen0 быстрее отрабатывает, поэтому быстро вычислять санки лучше только поэтому, чтобы они в gen1 не переходили.
[20:58:47] <0xd34df00d> По памяти и gc. Implementation detail, короч.
[20:59:51] <Ender> што такое overhead.
[21:00:24] <gsomix> Minoru, и как это противоречит тому, что я написал?
[21:00:40] <m4n71k0r> Ender: накладные расходы
[21:00:50] <gsomix> // ну, и на самом деле вся суть computer science в том, что это охуенно
[21:01:12] <Minoru> gsomix: почему ты думаешь, что я с тобой спорю? >_< Я же просто написал шутку про край CS!
[21:01:25] <gsomix> Потому что ты постоянно шутишь.
[21:01:30] <gsomix> А я хочу поговорить серьезно.
[21:01:57] <m4n71k0r> Minoru: а у CS есть край?
[21:02:08] <m4n71k0r> Minoru: а оттуда можно гикнуться?
[21:02:09] <gsomix> Вдруг ты что-то эдакое знаешь.
[21:02:13] <portnov> http://www.cs.cmu.edu/~rwh/courses/hott/ все прошли?
[21:02:18] <gsomix> Я пока думал, набрел на http://hackage.haskell.org/package/morte-1.6.0/docs/Morte-Tutorial.html
[21:02:18] <portnov> talking of cs.
[21:02:25] <m4n71k0r> gsomix: ничего он не знает.
[21:02:27] <gsomix> Ничего не понял, но офигел.
[21:03:12] <0xd34df00d> portnov: спасибо.
[21:03:12] <m4n71k0r> portnov: а есть запасной мозг, а то уменя контакты плавятся?
[21:03:19] <0xd34df00d> Я пока только на тему HoTT шутки шутить умею.
[21:03:20] <portnov> ._.
[21:03:30] <Minoru> gsomix: ну, перед этим мы с тобой говорили серьёзно. А потом я пошутил, потому что: 1) шутка пришла в голову; 2) ничего серьёзного я ответить не мог.
[21:03:37] <Minoru> m4n71k0r: это у тебя нужно спросить!
[21:04:02] <Minoru> урлы про HoTT я не открываю, чтобы хоть как-то сохранить самооценку и не впадать в уныние
[21:04:12] <gsomix> Нужен тег "шутеечка".
[21:04:55] <m4n71k0r> Minoru: почему гсомикс такой серьёзный?
[21:05:09] <Minoru> m4n71k0r: какой есть. А почему ты такой любопытный? :)
[21:08:58] <gsomix> m4n71k0r, почему ты обо мне спрашиваешь каких-то других людей, когда я тут?
[21:09:13] <m4n71k0r> gsomix: я невоспитанный
[21:09:40] <m4n71k0r> хочу показать, что тут не приличное общество серьёзных дядь
[21:10:27] <m4n71k0r> открыл сразу лекцию про Функторы
[21:12:05] <m4n71k0r> о, схемка знакомая
[21:12:13] <gsomix> m4n71k0r, :(
[21:14:21] <gsomix> Хуюнкторы.
[21:14:33] <Minoru> где тег «шутеечка»?!
[21:16:42] <gsomix> :(
[21:20:58] <gsomix> А в серьезной конференции меня бы лошили и троллили бы еще больше.
[21:21:06] <gsomix> Потому что я ничего не знаю.
[21:21:25] <gsomix> Ладно, когда-нибудь поумнею.
[21:25:32] eternastudento зашёл в конференцию
[21:32:43] <Славный капитан> всем гречки, посоны
[21:32:51] <m4n71k0r> +)
[21:33:01] m4n71k0r вышел из конференции
[21:34:03] ckorzhik вышел из конференции
[21:37:08] <Ender> бля
[21:37:10] <Ender> короче
[21:37:20] ckorzhik зашёл в конференцию
[21:37:23] <Ender> Сделайте кодревью.
[21:37:49] <Ender> http://pastexen.com/code.php?file=uOLARJrxNQ.cpp
[21:38:46] <Ender> мне бы какую-нибудь коллизию спалить бы.
[21:39:02] <Ender> Ну просто если я правильно пишу, всё парсится, работает
[21:39:36] <gsomix> > 1223
[21:40:04] <Minoru> вы меня извините, но это пиздец нахуй блять
[21:40:11] <Ender> и что .-.
[21:40:42] <Minoru> Ender: ты не пробовал создавать несколько файлов?
[21:40:59] <Ender> это было давно и неправда.
[21:41:23] <Ender> Я просто переписывал всё, и я просто хуярил в 1 файл всё, чтобы всё на виду было.
[21:41:28] <Ender> ну и 1223
[21:41:36] <Minoru> > typedef std::vector <SyntaxTreeNode *> aofs;
вот с такими именами переменных точно нахуй иди
[21:41:45] <eaeee> Minoru: :O
[21:41:59] <kpecmuk> $pet stats
[21:42:01] <horta hell> kpecmuk:
Кличка: Чпокер
Здоровье: 28
Сытость: 53
Возраст: 46 часов
[21:42:02] <Ender> имя типа. array of statements.
[21:42:24] <Ender> 1 раз во всей программе всплывает. ну 2.
[21:43:03] <eaeee> Ender: у тебя вообще все в одном файле?
[21:43:20] <Ender> тырпретатор весь в одном файле, действительно.
[21:46:11] <eaeee> к сожалению в плюсы не могу
[21:47:36] <Minoru> Ender: за посылы нахуй прошу прощения. Но ревьювить портянку вряд ли кому-то будет интересно
[21:48:11] <Ender> ты на парсер посмотри.
[21:48:20] <Ender> Такой пиздец никто не захочет ревьювить.
[21:48:33] <Ender> а это 150 строк всего.
[21:48:53] <Ender> и я даже не знаю, как бороться с этим.
[21:50:36] <eaeee> Minoru: ты не пишешь файлы более 1000 строк кода?
[21:52:31] <Minoru> eaeee: недавно написал ._. Но это тесты! Больше нигде не приходилось.
[21:54:54] <Minoru> Ender: о, комбинаторы! Код, конечно, не мешало бы отформатировать. Вообще без представления о твоём синтаксисе ревьювить бессмысленно. Мне, если что, лень вникать.
[21:58:57] <Ender> https://upload.wikimedia.org/wikipedia/commons/3/37/Wikipedia-lolcat.jpg
[21:59:09] ckorzhik вышел из конференции
[22:35:39] rexim зашёл в конференцию
[22:35:39] horta hell вышел из конференции: Disconnected: closed
[22:35:41] horta hell зашёл в конференцию
[22:35:57] <rexim> Чпок
[22:36:09] <Minoru> chpk cnfrmd
[22:36:18] <rexim> Minoru: thx
[22:36:25] ckorzhik зашёл в конференцию
[22:36:46] <rexim> Minoru: а я тут поназаписывал миди событий и проиграл их.
[22:37:02] <rexim> Minoru: https://github.com/tsoding/midi-looper
[22:38:33] <Minoru> к-кому проиграл?
[22:39:45] <rexim> Minoru: самому себе :(
[22:40:27] <Minoru> блин, выкрутился! Ну ничего, в следующий раз я тебя точно поймаю!
[22:41:01] <rexim> xD
[22:41:22] <rexim> Minoru: ты такой няша! :3
[22:41:52] <rexim> Minoru: у тебя есть любимый саундтрек из какого-нибудь фильма или игры?
[22:43:01] <Minoru> ух, вот чтобы прям любимый?
[22:43:04] * Minoru задумался
[22:43:24] <rexim> Ну можно не любимый.)
[22:43:48] <rexim> Ну или не из фильма/игры. :)
[22:43:53] <rexim> Просто любимый трек.
[22:44:09] <Ender> VETALICA - MASTER OF PUPPETS
[22:44:27] <Minoru> а, ну это проще. Но ты, видимо, захочешь это сыграть на клавиатурке, поэтому нужно подобрать что-то подходящее… Без гитарных запилов, например :)
[22:44:35] <Ender> если ты про миди, то эт самый лучший выбор.
[22:45:46] <Ender> у меня в osu! был какой-то трэк, там милый маппер догадался запилить хитсаунды -- конкретные ноты песни на октаву выше.
[22:45:59] <Ender> Я его с найткором и без музыки играю.
[22:46:03] <Ender> Только хитсаунды
[22:46:04] <Ender> гы
[22:46:37] <rexim> Minoru: если нужно время подумать, то я могу подождать :)
[22:46:53] <Minoru> rexim: ты уже ждёшь :D
[22:46:57] <rexim> Minoru: окей
[22:47:00] <Ender> rexim, миксерец, придумай легчайшую задачку для моего языка, чтобы я накодил и показал, что оно работает.
[22:47:12] <rexim> Minoru: Где-то месяц или два. Потом я спрошу еще раз :)
[22:47:23] <rexim> Ender: k-d дерево
[22:47:45] <Minoru> rexim: ишь ты, кокой ты, с таймаутами прямо! Отказоустойчивый штоль? А треды у тебя есть?
[22:47:47] <Ender> Minoru, там-там-там-там-там-тадам
[22:48:16] <rexim> Minoru: будут
[22:48:27] <rexim> Это просто программка потыкаться в portmidi
[22:48:34] <rexim> Ничего особенного :)
[22:49:02] <rexim> Я надюсь этот проект наконец-то будет чем-то более менее серьезным за долгое время.
[22:49:10] <Minoru> блин, я, похоже, кроме гитар ничего не люблю больше >_<
[22:49:14] <rexim> А то устал всякую хуйню на окамле писать :(
[22:49:36] <rexim> Minoru: я хочу сделать кафер. Инструменты не имеют значения.
[22:49:36] <Ender> rexim, xi - freedom dive
[22:49:44] <rexim> кавер*
[22:50:49] <Ender> rexim, xi - blue zenith
[22:50:55] <Minoru> rexim: вот из того, что я могу представить себе на миди-клавиатурке: Prodigy — Omen https://www.youtube.com/watch?v=xMVTKOoy1uk&ab_channel=TheProdigy
[22:52:05] <rexim> Minoru: охуенно! :)
[22:52:07] <rexim> Спасибо!
[22:52:09] <rexim> Идеально просто
[22:52:30] <Minoru> ^_^
[22:56:07] <rexim> Minoru: все записал и запланировали. Если когда-нибудь моя идея с мидилупером дойдет до вменяемого состояния, постараюсь закаверить. :)
[22:56:13] <rexim> Но это не меньше 1-2 месяца
[22:56:17] <rexim> Я надеюсь.
[22:59:25] <Minoru> будем ждать!
[23:01:00] dzhon зашёл в конференцию
[23:01:35] eaeee вышел из конференции
[23:02:48] <Minoru> кажется, Миксер подошёл к тому моменту, когда он умеет больше, чем физически может успеть сделать
[23:03:27] <rexim> Minoru: https://www.youtube.com/watch?v=-Z3YLbCDV_g&t=8515
[23:03:27] <Minoru> и программирование, и каверы. Дел так много, а в сутках всего лишь конечное число минут :(
[23:03:29] grouzen зашёл в конференцию
[23:03:40] portnov вышел из конференции
[23:03:52] <Minoru> grouzen: mcabber master race \o/
[23:05:27] <Minoru> rexim: это был кавер на звук поезда!
[23:05:47] <rexim> Ага :D
[23:09:59] <horta hell> @tsoding твитит: My Rust Making Sounds!!1 — Morning Tsoding #56 https://t.co/a404gnqsN8
[23:11:11] <Minoru> rexim: кстати, есть слово «rustling»
[23:11:28] <rexim> http://www.macmillandictionary.com/dictionary/british/rustling
[23:11:31] <rexim> Прикольно :)
[23:11:34] <rexim> Minoru: спасибо!
[23:12:05] <Minoru> пожалуйста. Забавно, я не знал, что оно также означает «красть скот»
[23:17:29] <rexim> Minoru: Rustling your GNU!
[23:17:56] <horta hell> Чпокер забился в самый темный угол конфы и смотрит больными глазами в одну точку.
[23:18:00] <rexim> $pet heal
[23:18:01] <horta hell> rexim: Чпокер был совсем плох и, скорее всего, умер бы, если бы вы его вовремя не полечили. Вы зарабатываете 1PTC.
[23:30:36] <gsomix> > fun x -> ch <|> ch *<- x ^->. x
[23:30:43] <gsomix> Кастомные операторы. =__=
[23:32:28] <rexim> |>_<|
[23:33:52] <Minoru> <>_<>
[23:35:35] <gsomix> $send ForNeVeR https://neoeinstein.github.io/hopac-concurrency-with-synchronous-messaging/#/10/1
[23:35:40] <horta hell> gsomix: Сообщение доставлено.
[23:35:51] <gsomix> $send ForNeVeR MADNESS
[23:35:52] <horta hell> gsomix: Сообщение доставлено.
Powered by freQ Powered by Python Valid XHTML 1.0 Transitional Valid CSS!