[07:55:48] <genieprox> этот тимсорт ничем не лучше и вапще нинужен
[08:30:17] <valexey> там написано чем он лучше
[08:30:26] <valexey> да и по таблице видно
[08:40:00] <genieprox> тимсорт от мерджсорт отличается только памятью -- у тимсорт оно n, а у мерджсорт depends...
и чем это лучше? о_О
[08:58:05] <valexey> лучшим временем отличается
[08:58:19] <valexey> причем лучшее время у тимсорта в реальных задачах бывает часто
[09:06:49] <valexey> "В отношении потребления батареи есть разница между убунтой и любым приличным дистрибутивом, в основном обусловленная избыточными фоновыми процессами и противоестественной страстью убунтоделов к питону."
[09:19:21] <genieprox> у мя ноут без питания в фоновом режиме вапще не разрядил батарею -- вин7
[09:19:28] <genieprox> за 5 часов
[09:24:44] <genieprox> Timsort is an adaptive, stable, natural mergesort. It has supernatural performance on many kinds of partially ordered arrays (less than lg(N!) comparisons needed, and as few as N-1), yet as fast as Python's previous highly tuned samplesort hybrid on random arrays.
[09:26:13] <valexey> фоновый режим никому не интересен
[09:26:27] <valexey> у меня вот макось не в фоновом режиме за 5 часов еще батарею не разрядила :-)
[09:26:59] <valexey> и это при том, что я на нем не только еклипсу гонял и по инетам браузил, видео смотрел, но и в современную игрушку играл :-)
[09:29:26] <genieprox> ну, в моём ноуте вроде слабая батарея -- на три часа расчитана
[09:34:30] <valexey> отмазки пошли :-)
[09:35:42] <genieprox> так раз она на три часа расчитана, а после фонового ожидания за 5 часов разряд 0% -- значит венда7 вапще ничо не потребляет в фоновом режиме
[09:36:05] <valexey> а что такое "фоновый режим" ? :-)
[09:36:21] <valexey> ты имееш ввиду спащий? ну да, оно автоматом засыпает через некоторое время
[09:36:27] <valexey> и естественно ничего не тратит в этом режиме
[09:36:54] <valexey> просто потому, что не запущена :-)
[09:40:02] <genieprox> не спящий, а просто ждущий, когда интернет снова появится и можно будет продолжить скачку биттоорентом и DC++
[09:40:10] <valexey> Проблемы сложности Scala: http://habrahabr.ru/blogs/scala/133347/
[09:40:20] <genieprox> программы-то там всё равно крутятся
[09:40:31] <valexey> а ты проверял? и как ты это проверял?
[09:43:55] <genieprox> ну как проверял -- крышку открываю -- всё работает
[09:45:04] <valexey> гы-ы. ну да, оно при поднятии крышки включается и работает, конечно :-)
[09:45:25] <valexey> это ж тебе не хибернейт где оно будет долго с винта грузить дамп в память
[09:48:19] <valexey> в холодильнике тоже всегда свет работает, ога :-)
[09:51:00] <genieprox> да нифига -- за секунду он включится не успеет
и как он в режиме гибернации будет качать с инета чо-нить?
[10:35:29] <valexey> включить процессор и видюху - легко
[10:35:35] <valexey> напряжение с ОЗУ не снимается
[10:35:48] <valexey> грузить же систему не нужно. нужно только комп включить :-)
[10:39:54] <genieprox> http://nponeccop.livejournal.com/238485.html
Вредные сигнатуры (загадка)
foo (x:y:_) = x == y
foo [_] = foo []
foo [] = False
Перед нами годный, рабочий код на хаскеле. Добавляете сигнатуру типа для foo - возникает ошибка. Без сигнатуры код работает. Сигнатура правильная. Почему так происходит? Комменты скринятся.
)))) ваще жесть
[10:49:04] <valexey> код действительно странноват. но почему же с сигнатурой не работает? :-)
[10:53:34] <genieprox> нипанятно )) ни в хугсе, ни в гхц )))
[10:53:48] <genieprox> а ничего странного в коде я не вижу
[10:54:20] <genieprox> хотя логичнее было бы переписать так:
foo (x:y:_) = x == y
foo [_] = False
foo [] = False
[10:54:57] <genieprox> в таком варианте с сигнатурой всё в порядке
[10:57:06] <genieprox> почему-то в выражении foo [_] = foo [] трансляторы не могут вывести тип foo []
почему -- хз
[10:57:24] <valexey> а какой тип у foo[] ? :-)
[10:57:57] <valexey> точнее просто у []
[11:02:07] <genieprox> Prelude> :t []
[] :: [a]
[11:05:46] <valexey> а какие сигнатуры пытаетесь расставить?
[11:06:39] <genieprox> ту, какую он выводит сам )))
foo :: Eq a => [a] -> Bool
[11:07:33] <valexey> ну что я могу сказать? хаскель аццтой :-) ибо программист спотыкается на элементарных вещах
[11:18:43] <geniepro> нифига!!! хаскель заставил программиста переписать индокод foo [_] = foo [] на нормальный код foo [_] = False
хацкель рулит навечно!!!!1111
[11:30:29] <valexey> что-то я не вижу где он его заставил
[11:31:08] <geniepro> он меня заставил )))
[11:31:18] <valexey> алсо индокод это как раз [_] = False
[11:31:21] <geniepro> я переписал как надо -- и всё скомпилялось с сигнатурой
[11:31:37] <geniepro> [_] = False
ну и как лучше???
[11:31:48] <valexey> [_] = foo []
[11:32:00] <valexey> очевидно же
[11:32:01] <geniepro> о_О почему?
[11:32:16] <valexey> потому, что подчеркивает общность исходов в обоих случаях
[11:32:33] <valexey> и чтобы поменять общий исход придется править только в одном месте, вместо того, чтобы заниматься копипастой
[11:32:39] <geniepro> общность подчёркивает именно
foo [_] = False
foo [] = False
[11:33:44] <valexey> ога, и провоцирует программирование на копипасте
[11:33:59] <geniepro> foo равна False, если входной список пуст или из одного элемента, иначе
равен равенству двух первых его элементов
[11:35:37] <geniepro> вот как надо было
foo [] = False
foo [_] = False
foo (x:y:_) = x == y
[11:36:36] <valexey> а теперь представь, что потребовалось вместо False написать страшную не тривиальную формулу.
[11:36:53] <valexey> будешь её копипастить для обоих случаев? :-)
[11:36:56] <geniepro> f yt yflj nfr gbcfnm ))
[11:37:03] <geniepro> а не надо так писать ))
[11:38:14] <valexey> не надо писать на хаскеле сложные вещи? таки да, поддерживаю :-)
[11:39:12] <geniepro> надо писать так, что бы не было страшных и сложных вещей же!!!111
очевидно же )))
[11:40:07] <valexey> угу. я и говорю - сложные вещи не писать на хаскеле
[11:40:13] <valexey> максимум что писать на нем - факториалы
[11:40:18] <valexey> тогда будет все хорошо
[11:40:24] <geniepro> сложные вещи вообще не писать.
нигде!
[11:40:36] <valexey> ога. делать их вручную!
[11:42:53] <geniepro> вообще же не делать! о_О
[11:45:23] <valexey> назад в пещеры?
[12:28:48] <geniepro> и не вылезать из них!
[13:30:09] <geniepro> кемиисто! ты де бродишь? тут столько клевет на хацкель было )))
[13:30:39] <kemiisto> geniepro: о! так ты живой!
[13:30:40] <kemiisto> :D
[13:30:47] <geniepro> ага )
[13:30:53] <kemiisto> а мы уж было тебя со счетов списали :D
[13:31:00] <geniepro> рано, рано ))))
[13:31:20] <geniepro> я хоть и живу в каменном веке, но работаю в железном )
[13:31:47] <kemiisto> >> не надо писать на хаскеле сложные вещи
[13:31:54] <kemiisto> поддерживаю оратора
[13:31:56] <kemiisto> :D
[13:32:58] <geniepro> валексей -- тот ещё тролль...
[13:33:08] <kemiisto> valexey: вот ещё, кста http://www.infoq.com/presentations/Simple-Made-Easy
[13:33:17] <kemiisto> создатель clojure
[13:43:20] <kemiisto> https://thestrangeloop.com/news/strange-loop-2011-video-schedule
[13:43:28] <kemiisto> вот
[16:12:51] <valexey> http://users.iptelecom.net.ua/~goroh/FILES/kozly.htm
[16:14:17] <kemiisto> valexey: over 10 lines, насилит же никто! :D
[16:14:49] <valexey> да ладно, это ж Горох - пишет отлично.
[17:00:25] <valexey> vlad2 kemiisto : http://www.opennet.ru/opennews/art.shtml?num=32388 ( Python OS Project - новая операционная система на языке Python)
[17:02:47] <kemiisto> valexey: ЛИЦОЛАДОНЬ!
[17:16:42] <kemiisto> Польский хоккейный клуб http://www.unia.aksam.pl/
[17:23:22] <kemiisto> valexey: http://forum.oberoncore.ru/viewtopic.php?f=30&t=3691
[17:23:25] <kemiisto> на тебе
[17:23:29] <kemiisto> для клевет
[17:23:30] <kemiisto> :D
[17:25:35] <valexey> жесть какая
[17:25:45] <valexey> причем независимые ведь ошибки
[17:25:48] <valexey> точнее дизайн
[17:26:00] <valexey> ну а чо? излишняя любовь к порядку же :-)
[17:26:08] <kemiisto> valexey: без доказательного программирования явно ни там, ни там не обошлось
[17:26:10] <kemiisto> :)
[17:26:16] <valexey> я пользую отступы в пять пробелов - и все должны так пользовать!
[17:27:48] <valexey> вообще, правильным решением было бы использование тупо позиксной write функции
[17:27:58] <valexey> которая через файловый дескриптор пишет
[17:28:57] <valexey> https://lh3.googleusercontent.com/-sEcXpY_dxKc/TsKg2cf7sqI/AAAAAAABkTk/skUdxSYMb9s/h301/2011.11.15_life_of_a_swe.png
[17:30:37] <kemiisto> :D
[17:31:01] <valexey> И так всегда!
[17:33:09] <valexey> https://lh6.googleusercontent.com/-5YekkYCMpy8/TpZ38peAb2I/AAAAAAABkAs/ImmnBzcv-LY/s912/2011.03.24_eating_fruits.png
[19:07:30] <valexey> о! Микрософт против Dart (кто бы сомневался?): http://habrahabr.ru/blogs/webdev/133392/
[22:29:35] <valexey> блин. какие же ЯП все убогие. это что-то
[22:29:47] <valexey> с модульностью плохо вообще почти у всех современных ЯП
[22:29:51] <valexey> в том числе и у оберона
[22:30:03] <kemiisto> :D
[22:30:21] <valexey> зато GC пихают везде где надо и не надо
[22:30:29] <valexey> уроды
[22:31:08] <valexey> и жирнющий рантайм
[22:31:19] <valexey> со стандартными либами на перевес
[22:31:58] <valexey> в результате либо исполняемое файло hello world'a весит полметра, либо веси пару килобайт, зато тянет за собой runtime enviroment метров эдак на сотню
[22:32:51] <kemiisto> дыши глубже :)
[22:35:07] <valexey> понаписали говна. и этим говном срут в головы программистам
[22:35:21] <valexey> преподносится как последнее слово техники, ога
[22:35:53] <kemiisto> valexey: программисты и срут
[22:35:57] <valexey> а на практике оказывается, что для MSP430 так ничего лучше старого доброго Си с небольшими вкраплениями C++ не придумали.
[22:36:49] <valexey> дармоеды
[22:38:21] <valexey> какого фига вообще мне приходится писать в одном проекте на ПЯТИ разных языках "общего" назначения?
[22:38:44] <valexey> И каждый - говно говном. Лучший из них, пожалуй, С++. Но на нем и меньше всего кода.
[22:39:41] <valexey> А вообще в проекте у нас используется ШЕСТЬ языков. Общего назначения.
[22:40:44] <valexey> Я начинаю понимать американских военных которые взяли пулемет, поставили всех языкопейсателей к стенке и заставили сделать Аду и всем её использовать.
[22:51:50] <valexey> Go жжет. Напалмом. Они переплюнули даже Оберон с тамошней звездочкой для экспорта:
[22:52:00] <valexey> Exported identifiers
An identifier may be exported to permit access to it from another package using a qualified identifier <http://golang.org/doc/go_spec.html#Qualified_identifiers>. An identifier is exported if both:
1. the first character of the identifier's name is a Unicode upper case letter (Unicode class "Lu"); and
2. the identifier is declared in the package block <http://golang.org/doc/go_spec.html#Blocks> or denotes a field or method of a type declared in that block.
All other identifiers are not exported.
[22:53:35] <valexey> то есть чтобы вытащить всё что экспортируется - уже не достаточно погрепать public или посмотреть в хедер или начало файла
[22:53:42] <valexey> да тут даже регулярка не спасет!
[22:55:31] <valexey> в Ди вообще пишу private { srtuct Foo{}} , и эта стуктура Foo отлично в других модулях используется
[22:59:41] <kemiisto> и всё!? :D
[23:00:02] <valexey> что, все?
[23:00:13] <kemiisto> мало злости!
[23:00:15] <kemiisto> ещё!
[23:00:21] <kemiisto> ещё клевет!
[23:00:24] <kemiisto> :)
[23:00:43] <valexey> не, не буду, а то взорвусь нафиг
[23:00:44] <kemiisto> ХАЧУ ГАДОСТЕЙ ПРО Х-ЛЬ!
[23:00:49] <valexey> пойду, убью кого-нибудь в танки
[23:00:58] <valexey> kemiisto: НЕ ПРОИЗНОСИ ЭТО СЛОВО ТУТ!!1
[23:01:13] <kemiisto> valexey: а что за 5 языков?
[23:01:52] <valexey> ObjC, C, C++, D, Java, C#, ах, да, матлаб еще. но он не шибко general purpose.
[23:02:10] <kemiisto> это 7 же!
[23:02:12] <kemiisto> :D
[23:02:23] <valexey> УБИВАТЬ!
[23:02:38] <valexey> И ВСЕ УБОГИ!
[23:02:55] <kemiisto> ТОЛЬКО ФОРТРАН! ТОЛЬКО ПОБЕДА! :D
[23:02:55] <valexey> Самые вменяемые из этих - С и С++
[23:03:11] <valexey> О, да. Засунуть фортран в MSP430! Засунуть фортран в йфон и андроид!
[23:03:30] <kemiisto> :D
[23:03:57] <valexey> ну и для системного программирования он тоже хорош! для сокетов, низкоуровневых всяких позиксных закидонов
[23:04:30] <kemiisto> кто? си?
[23:04:51] <valexey> фортран :-)
[23:05:07] <kemiisto> :O
[23:05:57] <valexey> цирк уродцев, блин
[23:06:07] <valexey> у Ди рантайм писан на Ди, зато компилятор на С++
[23:06:26] <valexey> у Rust'a компилятор писан на rust'e, зато рантайм на С++
[23:06:34] <valexey> /me facepalm