[02:02:27] <valexey> On the other hand, when you copy st ring values around, there's no more need
to duplicate the underlying data—they can all refer to the same memory because it's
known neither will overwrite it, which makes st ring copying at the same time safe and
efficient. Better yet, st rings can be shared across threads without problems because,
again, there's never contention. Immutability is really cool indeed.
[12:09:08] <valexey> ю
[12:09:10] <valexey> .
[12:09:46] <valexey> kemiisto: где ты там уже со своей прочитанной электронной книжкой по D? :-)
[12:10:01] <valexey> пипл жаждет рецензии!!1
[12:10:09] <kemiisto> valexey: её ты читаешь
[12:10:10] <kemiisto> а не я
[12:10:12] <kemiisto> :)
[12:10:13] <kemiisto> .
[12:10:16] <valexey> упс
[12:10:24] <kemiisto> с тебя и спрос!
[12:10:25] <valexey> /me ни разу не химик
[12:10:43] <kemiisto> valexey: с сего дня - будешь!
[12:10:44] <kemiisto> :D
[12:10:55] <valexey> вообще, у нас слово "химик" всегда было обидным обзывательством.
[12:11:08] <valexey> у нас, у физиков :-)
[12:15:55] <shaggie> а вы подеритесь
[12:15:59] <valexey> "Выбирали подарок на день рождения для коллеги по работе. Обсуждаем.
- у него же айфон, девайте купим какую нибудь приблуду полезную, их же много всяких.
- да давайте, только что бы полезную, а не чехольчик!
- можно ему телефон на андроиде подарить. очень полезно, когда у тебя айфон."
[12:16:12] <kemiisto> shaggie: мы лучше ИТщникам наваляем!
[12:16:15] <kemiisto> ВМЕСТЕ!
[12:16:16] <kemiisto> :D
[12:16:38] <shaggie> ну тогда мне, гуманитарию, бояться нечего
[12:16:51] <valexey> :-D
[12:17:05] <kemiisto> интересно
[12:17:26] <valexey> прям хоть на оборонкоре заводи темку - "Истинное лицо профессионалов в ИТ"
[12:17:27] <valexey> :-)
[12:17:34] <kemiisto> а сущесвтуют вообще люди, обучавшиеся на программиста?
[12:17:37] <kemiisto> :D
[12:17:41] <valexey> химики, физики, ГУМАНИТАРИИ по образованию.
[12:17:43] <kemiisto> МИФ!
[12:17:54] <valexey> kemiisto: существуют. вот мы пачку ВМКшников берем.
[12:17:55] <kemiisto> ПРОГРАММИСТОВ НЕ СУЩЕСВТУЕТ!!!111
[12:18:05] <valexey> магистрантов
[12:18:21] <kemiisto> valexey: красную или синюю?
[12:18:52] <valexey> правда их там не шибко программированию учат, как оказывается :-) но все же лучше чем с радиофака например.
[13:45:16] <geniepro> Самая уязвимая к ошибкам программа
main(int argc, char *argv[]) {   printf(gets(malloc(atoi(argv[1]))));      }
[14:25:54] <kemiisto> shaggie: https://github.com/mcahriman/InterChat-Telecom/issues/1
[14:25:58] <kemiisto> :D
[14:26:06] <kemiisto> у вас нет такого в проекте?
[14:27:20] <shaggie> пока нет
[14:27:25] <shaggie> назревает
[15:56:31] <vlad3> На оборонкоре alloca изобретают.
[15:57:25] <vlad3> В то время как все уже поняли его ненужность и опамность :)
[15:57:37] <vlad3> опасность
[18:08:25] <valexey> vlad3: но ведь alloca в c99 вшили в язык
[18:08:27] <valexey> И даже в аде это есть
[18:09:03] <valexey> Я имею ввиду размещение массива на стеке размера неизвестного на этапе компиляции
[18:11:08] <valexey> kemiisto: ну это ж питон! Он не рефакторится
[20:11:57] <vlad2> Вшили - тем хуже для них. Со stack overfolw бороться сложно.
[20:15:19] <valexey> Вроде адисты не жалуются
[20:15:26] <valexey> Вроде бы наоборот
[20:16:22] <kemiisto> адисты
[20:16:25] <kemiisto> не звучит
[20:16:53] <kemiisto> адичи
[20:16:56] <kemiisto> адичане
[20:17:02] <kemiisto> нет, всё не то
[20:17:08] <valexey> /me дал студентке переписать сишный код на шарпе или яве
[20:17:16] <kemiisto> опа на!
[20:17:24] <kemiisto> НАЖМИ СТОП-КАДР!
[20:17:42] <kemiisto> на той неделе студенты были
[20:18:00] <kemiisto> а тут уже выясняется
[20:18:07] <kemiisto> СТУДЕНТКИ!!!111
[20:18:13] <shaggie> адики
[20:18:35] <valexey> Там смесь студентов со студентками :-)
[20:19:56] <kemiisto> содомия значит
[20:20:00] <kemiisto> так и запишеи
[20:20:01] <kemiisto> м
[20:21:55] <valexey> Нет. Содомия была бы если бы только студенты :-)
[20:23:15] <vlad2> Для сей переменные массивы на стэке актуальны, потому что "дешево и сердито". Один фиг язык низкоуровневый, одним stack щverflow больше - не принципильано уже. В нормальном языке - нафиг нужно.
[20:23:18] <valexey> shaggie: а проблема хаскеля в том, что там производительность очень сильно зависит от неочевидных не стандартных и постоянно меняющихся оптимизаций ghc
[20:23:49] <vlad2> Двже в плюсах - уже не нужно.
[20:23:50] <valexey> vlad2:ну, стек и бесконечным может быть
[20:24:00] <valexey> В том же линухе
[20:24:29] <valexey> Поэтому что у тебя куча кончится, что стек -все едино
[20:24:57] <valexey> Да, и на стеке сильно быстрее
[20:27:09] <vlad2> В том-то и проблема - что сильно зависит даже не от железки, а от ОС.
[20:27:17] <vlad2> Не сильно быстрее.
[20:27:44] <vlad2> Я тут в последнее время как раз занимаюсь оптимизацией нашего продукта.
[20:28:04] <vlad2> Еще ни одной динамической аллокации не убрал.
[20:28:17] <vlad2> Зато написал профайлер для жабаскрипта ;)
[20:28:58] <vlad2> Этот профайлер пока ранится - беззастенчиво использует std::map и std::string.
[20:29:31] <vlad2> Замедляет жабаскрипт всего на ~20%
[20:30:38] <valexey> Ну. Блин. Жабаскрипт использовать в проекте…
[20:30:43] <vlad2> Причем замедление просиходит главным образом от того, что к жабаскрипту "цепляются" коллбэки (там какие-то оптимизации перестают работать), а не потому что сами коллбэки плюсовые тормозят.
[20:31:03] <valexey> Это же хуже даже шарпа!
[20:32:08] <vlad2> Я пока профайлер делал - думал таки сразу заоптимизить (хотя бы от std::string избавится), но удержался - решил сначала посмотреть, как оно будет в таком наивном виде работать. Посмотрел. И оставил как есть.
[20:32:44] <kemiisto> vlad2: для ББ делай профайлер!
[20:34:26] <vlad2> Жабаскрипт - постольку поскольку. Плюсовый код если и оптмизится, то алгоритмически.
[20:36:11] <vlad2> Даже если вдруг потребуется быстрая аллокация по стэковой схеме - всегда можно сделать аллокатор и спускать его вниз по стэку. Все равно лучше, чем по живому стэку фигачить.
[20:36:33] <shaggie> valexey: да вроде бы оптимизации достаточно очевидные - логически подумать и воткнуть strictness в узкое место
[20:37:39] <vlad2> Короче, сказки про "тормозную кучу" - это сказки из 80-х. Уже давно неактуально даже для языков без GC.
[20:42:37] <vlad2> Для ББ профайлер не нужен ;) У кого надо - и без профайлера все быстро :)
[20:43:17] <kemiisto> для ББ и тормозная кучу актуальна :D
[21:10:19] <valexey> shaggie: а нифига. узкое место - это то место, которое работает медленней сей в полтора-два раза :-) мне нужно чтобы было нулевое пенальти, а не "отличный результат" который тормознее сишного в два раза.
[21:12:08] <valexey> vlad2: а фрагментированная куча - тоже сказки? :-)
[21:22:01] <vlad2> Страшилка ;)
[21:22:25] <vlad2> Видел такое в связке шарп-C++
[21:22:38] <vlad2> Просто в С++ не видел :)
[21:23:00] <valexey> игроделы вроде жалуются с завидной регулярностью
[21:23:23] <vlad2> Игроделы - это восем другая опера.
[21:23:48] <vlad2> У них там с пулов все начинается :)
[21:25:40] <vlad2> Но им от динамики все равно не уйти. Так что "встроено" alloca или нет - уже не парит.
[21:26:40] <valexey> погодь, а почему другая опера?
[21:26:49] <valexey> чем оно от моих любимых телекомов отличается?
[21:28:07] <vlad2> Телекомы - не знаю :) Там без alloca никак? :)
[21:28:43] <valexey> ну почему аллока сразу? но вот пулы.. реалтайм же.
[21:28:54] <valexey> что в играх что в телекомах
[21:40:39] <valexey> kemiisto: ты даже понять задачки для начинающих не способен!!11
[21:40:48] <valexey> одним словом - химик. не профессионал!
[21:46:14] <vlad2> Приснилось, что пишу на 1С. ААА!
[21:46:58] <valexey> vlad2: вещий сон
[21:47:02] <vlad2> НЕТ!!!
[21:47:17] <valexey> сон в руку :-)
[21:47:43] <vlad2> Ну знаешь. Мне и алиены, захватывающие Землю снятся. Так что ж теперь? :)
[21:48:15] <valexey> дык разве не так? подскажу по секрету где у них гнездо: forum.oberoncore.ru
[21:48:17] <valexey> вот там.
[21:48:21] <valexey> штаб.
[21:48:30] <valexey> и ихний супербосс тоже в наличии
[21:48:42] <valexey> придут они, и будешь ты писать на 1С
[21:49:20] <vlad2> Не, если эти алиены придут, ту писать мы будет вовсе не на 1С :)
[21:49:46] <kemiisto> valexey: дерзкий он
[21:49:48] <kemiisto> :D
[21:49:52] <valexey> ну, первый удар будет по системному и прикадному программированию
[21:49:59] <kemiisto> прям Эйнштейн
[21:50:00] <valexey> там где всякие шарпы плюсы и жабы
[21:50:13] <valexey> а потом и до DSL доберутся :-)
[21:50:28] <valexey> но какое-то время придется нам спасаться 1Сом
[21:50:40] <valexey> kemiisto: ну, самомнение, оно да.
[21:51:06] <valexey> интересно, со студентами он так же?
[21:51:14] <valexey> я вот со студентами добрый.
[21:51:42] <kemiisto> valexey: он преподает?
[21:51:42] <valexey> /me на самом деле дал задание переписать с Си на Шарп или Жабу, чтобы проверить, готов ли человек выполнять бессмысленные приказы.
[21:52:11] <valexey> kemiisto: да
[21:52:18] <valexey> по моему чуть ли не МГУ
[21:52:27] <kemiisto> МГУ
[21:52:31] <kemiisto> тогда понятно
[21:52:35] <kemiisto> :D
[21:52:41] <kemiisto> череп жмёт
[21:52:47] <valexey> :-)
[21:53:47] <valexey> да, но в реальности мое задание не бессмысленно - мне реально нужен человек который умеет это делать. но оно может показаться таковым. :-)
[22:34:53] <kemiisto> и сразу грубить
[22:35:00] <kemiisto> вот жеж люди пошли
[23:03:03] <valexey> kemiisto: ну, в чем-то он похож на info21
[23:04:59] <kemiisto> d1 := ABS(a - b);
d2 := ABS(b - c);

IF d1 = d2 THEN
StdLog.String("Yes.");
ELSIF (d1 < d2) & (d2 MOD d1 = 0) THEN
StdLog.String("Yes.");
ELSIF (d2 < d1) & (d1 MOD d2 = 0) THEN
StdLog.String("Yes.");
ELSE
StdLog.String("No.");
END;
[23:05:06] <kemiisto> valexey: как тебе?
[23:05:08] <kemiisto> :D
[23:05:15] <kemiisto> говнокод?
[23:05:34] <kemiisto> по сути он прав
[23:05:44] <kemiisto> я таки слишком тривиальную задачу решил
[23:06:01] <kemiisto> но ей богу вы не видели книги
[23:06:12] <kemiisto> там эти задачки на 30 странице
[23:06:23] <kemiisto> а он, конечно, мыслит в отрыве от книги...
[23:07:05] <valexey> угу.
[23:07:36] <valexey> но, с другой стороны, если человек не программист, но математик, физик или химик, то логика у него вполне развита чтобы понять неоднозначности формулировки
[23:07:40] <valexey> и подводные камни
[23:43:26] <valexey> kemiisto: чувствуешь себя оклеветанным?
[23:43:27] <valexey> :-)
[23:48:30] <kemiisto> valexey: не, там выше неправильное решение
[23:48:36] <kemiisto> :(
[23:48:42] <kemiisto> живот ещё болит
[23:48:44] <kemiisto> ...
[23:49:08] <valexey> Это психосоматическое!
[23:49:20] <kemiisto> valexey: нет, у меня вторую неделю
[23:49:29] <kemiisto> надо в понедельник идти к врачу
[23:49:32] <kemiisto> :(
[23:49:39] <kemiisto> есть вообще не могу
[23:49:41] <valexey> Гм. Кстати, ведь да.
[23:49:49] <valexey> Ротовирус?
[23:49:50] <kemiisto> как поем, сразу плохо
[23:50:01] <valexey> Температура есть?
[23:50:04] <kemiisto> нет
[23:50:15] <kemiisto> я постоянно мерял
[23:50:16] <valexey> Желудок или кишечник?
[23:50:32] <kemiisto> то там то там
[23:50:36] <kemiisto> то в печёнках
[23:50:42] <kemiisto> то в селезёнках
[23:50:44] <kemiisto> ;)
[23:50:55] <kemiisto> весело чо
[23:51:08] <valexey> Гм. Да. К врачу надо. А то до язвы можно доиграться.
[23:51:18] <kemiisto> не
[23:51:19] <shaggie> kemiisto: очень похоже на желчный пузырь
[23:51:26] <kemiisto> я зимой проверялся
[23:51:39] <kemiisto> "кишку глотал"
[23:51:47] <kemiisto> и узи желчного делал
[23:51:50] <kemiisto> в том числе
[23:52:06] <kemiisto> ничего не нашли, вроде как
[23:52:17] <shaggie> ахха. так это ты значит меня заразил этой неведомой хренью через интернеты
[23:52:18] <valexey> Моей бабушке помнится тоже коков у нее стал болеть живот проверили желудок
[23:52:26] <valexey> Желудок оказался отличным!
[23:52:38] <kemiisto> тока селезёнка была (возможно) чуть-чуть увеличена
[23:52:52] <kemiisto> и то они не могут сказать точно
[23:52:59] <kemiisto> бо там статистика нужна
[23:53:04] <kemiisto> а де она у меня?
[23:53:06] <kemiisto> ;)
[23:53:08] <valexey> А через несколько лет оказалось что была язва. Только не желудка а 12ти перстной кишки
[23:53:41] <kemiisto> ну, если совсем худо станет
[23:53:47] <valexey> И все в рубцах
[23:54:03] <kemiisto> я знаю, где станция скорой помощи
[23:54:05] <kemiisto> :D
[23:55:25] <kemiisto> тут скорую вызывать накладно
[23:55:28] <kemiisto> поэтому
[23:55:34] <kemiisto> если сам идти можешь
[23:55:41] <kemiisto> то ноги в руки
[23:55:52] <valexey> О! Я придумал антиспам задачку! Берем любую задачу которая подразумевает циклы. И смотрим, если в решении есть хоть один брейк, то чела сразу баним!!1
[23:56:09] <valexey> Ужас
[23:56:35] <kemiisto> valexey: а считается страна победившего социализма!
[23:56:41] <kemiisto> Так вот ты какой, социализм!
[23:56:44] <kemiisto> ;)
[23:56:53] <kemiisto> но тут тоже есть тонкий нюанс
[23:57:08] <kemiisto> если тебе скорая привезла, тебя примут вне очереди
[23:57:13] <valexey> Пришел больной и затроллил всех…
[23:57:27] <kemiisto> независимо от жалоб
[23:57:35] <kemiisto> я один раз
[23:57:39] <kemiisto> года 2 назад
[23:57:43] <kemiisto> попал жутко
[23:57:54] <kemiisto> у меня был (как оказалось) позже
[23:57:58] <valexey> Я знаю почему у тебя живот болит - в последние недели у тебя слишком много еды!!! Троль :-)
[23:57:58] <kemiisto> жуткий герпес
[23:58:09] <kemiisto> только не на губе который
[23:58:19] <kemiisto> а поражающий внутренние органы!
[23:58:21] <kemiisto> :)
[23:58:25] <kemiisto> бывает и такой
[23:58:35] <kemiisto> у меня был поражён глаз
[23:58:39] <valexey> Угу. Я знаю
[23:58:44] <kemiisto> пол ебла заплыло
[23:58:47] <kemiisto> температура
[23:58:52] <kemiisto> все дела
[23:58:53] <valexey> Ацикловиром его!
[23:59:04] <kemiisto> ну я ж не знал что
[23:59:21] <kemiisto> и вот я ночью дошёл до туда
[23:59:22] <valexey> Да, сам хрен диагностируешь
[23:59:30] <kemiisto> а мы тогда на квартире жили
[23:59:32] <kemiisto> недалеко
[23:59:38] <kemiisto> пришёл де-то в 10
[23:59:45] <kemiisto> а приняли меня в 5 утра
[23:59:52] <kemiisto> но это был жуткий не фарт
[23:59:53] <valexey> И ацикловир фиг купишь небось