[09:03:49] <genieprox> кемиисто, скинь в тему http://forum.oberoncore.ru/viewtopic.php?f=80&t=3610&sid=d6a4966cb3704ec0862c79d664fec12e
ссылку http://www.cs.duke.edu/~ola/patterns/plopd/loops.html
покорми их там )))
[09:05:34] <valexey> genieprox: а в хаскеле есть цикл дейкстры?!
[09:05:38] <valexey> ;-)
[09:06:43] <genieprox> в хаскелле нет циклов!!!
[09:06:57] <genieprox> но симитировать можно, хотя выглядеть оно будет не ахти
[09:07:32] <genieprox> а вапще, надо про управляющие структуры дейкстры тему замутить на форуме -- в обероне их нет, даже в седьмом
[09:07:43] <valexey> Значит хаскель плох для написания сложных алгоритмов !!!11
[09:08:13] <genieprox> нихера! сложные алгоритмы надо упрощать, и от циклов надо избавляться!
нет цикла -- нет проблемы!
[09:14:43] <valexey> Сложный алгоритм нельзя упростить
[09:14:58] <genieprox> как нельзя??? можно же!!!
[09:15:15] <genieprox> надо просто абстракций понавешать!
[09:15:28] <valexey> Попробуй на хаскеле хотя бы что то из численных методов реализовать
[09:15:39] <genieprox> на каждом уровне абстракции всё будет просто, а в целом -- тот же самый алгоритм же
[09:15:47] <valexey> Нет. Это не поможет
[09:16:22] <valexey> Абстракции помогают когда у тебя очень простые алгоритмы, но их много
[09:16:24] <genieprox> речь о эквивалентности или эффективности вообще?
если об эффективности -- то при чём тут сложность алгоритма?
[09:16:55] <valexey> vlad2 http://habrahabr.ru/blogs/javascript/130589/
[09:17:10] <genieprox> под абтракциями я имею в виду не шаблоны и дженерики, а проектирование сверху-вниз же
[09:18:38] <valexey> Без разницы
[09:18:55] <valexey> Ты попробуй что то не тривиальное написать
[09:19:47] <genieprox> и в чём проблема?
[09:20:19] <genieprox> что может быть более нетривиальным, чем компилятор GHC?
[09:20:27] <valexey> В том что там нужен будет хитрый вложенный цикл :-)
[09:21:04] <valexey> ЧМ
[09:24:02] <genieprox> от хитрых вложенных циклов надо избавляться -- они являются признаком ошибки в архитектуре/дизайне
[09:24:53] <valexey> Это верно но при условии что у тебя используются простые алгоритмы
[09:25:20] <valexey> То есть это верно в 98 процентах случаев промышленной разработки
[10:05:40] <genieprox> http://lenta.ru/news/2011/10/17/ftlneutrino/
В сверхсветовой скорости нейтрино обвинили GPS
[10:05:58] <genieprox> как я и говорил -- неправильные измерения у них там были
[10:44:19] <valexey> НИНУЖЕН!
[11:03:21] <genieprox> кто нинужен? о_О
[12:35:20] <genieprox> xxx: Пошел сегодня с застуженным горлом на фехтование, тренер, сволочь, ставит в спарринг. Надеваю маску, еле дышу, хриплю и тут что-то на ум пришло, просипел "Люююююк, я твой отец". Тренер сказал, что первая в истории фехтовения победа техническим нокаутом )
[12:41:11] <genieprox> Срок регистрации домена oberoncore.ru закончился
[12:41:18] <genieprox> o_O ))
[12:41:47] <valexey> YES!!!1
[12:41:52] <valexey> теперь надо его зарегать побыстрому
[12:42:52] <genieprox> ага ))
[12:44:03] <genieprox> а потом перепродать в 10 раз дороже )))
[12:44:15] <genieprox> или за лицензию на блекбокс отдать )))
[12:46:18] <valexey> это пошло!
[12:46:30] <valexey> лучше сделать там ресурс по С++ и бусту.
[12:46:53] <genieprox> тоже вариант, но ещё и по хаскеллу тоже пусть буит ))
[13:03:39] <valexey> у ObjC тормозные контейнеры - жуть
запускаю приложение без засовывания данных в очередь - 45-47 fps
засовываю с очередью - 29 fps
[14:56:39] <valexey> "Во-вторых, есть ещё масса странных мест. Например, зачем-то в CGO структуры выравниваются, чего мне совсем не нужно."
[14:56:42] <valexey> /me facepalm
[17:36:06] <valexey> ааа!!! блютус модули в компе с компом общаются через ком-порт!!1
[17:36:12] <valexey> /me facepalm
[18:25:14] <vlad2> "Да то, что JavaScript и есть язык широкого профиля, от сложных скриптов до сложных приложений. JavaScript — высокоуровневый и чрезвычайно мощный объектно-ориентированный язык, и именно поэтому все попытки его «улучшить» проваливаются с треском (ну, пока, по крайней мере)."
[18:25:18] <vlad2> /me facepalm
[18:26:07] <kemiisto> :D
[18:26:15] <kemiisto> это такая игра, да?
[18:26:29] <kemiisto> щас я тоже что-нить найду!
[18:26:36] <valexey> "это такая игра, да?"
[18:26:40] <valexey> /me facepalm
[18:26:57] <kemiisto> Facepalm Game!
[18:27:39] <valexey> vlad2: ну, вообще да. то что язык не получается улучшить, говорит как бэ о многом :-)
[18:28:05] <valexey> улучшить js - все равно что пытаться улучшить программу писаную в спагетти-стиле :-)
[18:28:44] <kemiisto> zво второй части я ждал слово "оберон" :D
[18:30:37] <valexey> ну, абирон как раз можно улучшить
[18:30:51] <kemiisto> ой, батюшки!
[18:30:51] <valexey> правда от этих улучшизмов абиронщиков сразу стошнит :-)
[18:30:58] <kemiisto> глазам своим не верю!
[18:31:08] <kemiisto> valexey: :D
[18:31:26] <valexey> ибо он станет чем-то вроде C++ только с базой не в виде Си, а в виде Оберона :-)
[18:32:36] <kemiisto> запахло шаблонами :D
[18:33:33] <valexey> И НЕ ТОЛЬКО!!11
[18:33:57] <vlad2> Буквально вчера обсуждали с коллегами как WebStorm "дохнет" на первом же жабаскриптовом "наследовании".
[18:34:17] <vlad2> (в статье он приводится как пример умной IDE)
[18:34:52] <vlad2> "WebStorm вполне справляется с такими нетривиальными для JS задачами, как перейти к декларации метода или провести рефакторинг интерфейса класса."
[18:35:27] <kemiisto> :facepalm к И НЕ ТОЛЬКО!!11
[18:35:29] <kemiisto> :D
[18:35:33] <vlad2> Ну нету классов в жабаскрипте - какой нафиг рефакторинг интерфейса???
[18:36:41] <shaggie> сказано же - нетривиальная задача :)
[18:42:11] <valexey> а теперь внимание вопрос - нафига нам такой язык, где поиск декларации метода является не тривиальной задачей? :-)
[18:43:16] <valexey> особенно на больших проектах
[18:45:24] <vlad2> Вот и я про то же.
[18:46:05] <valexey> а если методы и их декларация в жабаскрипте не важны, тогда следует указать что у нас вместо этого, и что нам придется таки искать :-)
[18:57:07] <valexey> кстати, я заметил, что гибкие языки (в пределе - не разложимые, или имеющие очень мало классов грамматики), навроде js, провоцируют превращать код в кашу. в этой каше в любом месте может встретиться что угодно. например в функции может встретиться объявление массива в котором встретится объявление класса с методом в котором вызывается функция которой передается для каллбека объект с типом анонимного класса который объявляется прямо здесь же.
[18:57:25] <valexey> то есть растет неограничено уровень вложенности
[18:57:48] <valexey> причем типы конструкций на каждом из уровней встречаются хаотично
[18:58:17] <valexey> по сути конструкции никак не привязаны к какому-либо уровню вложенности
[18:58:50] <valexey> в отличае от, скажем Ады, или там оберона (хотя там и есть вложенные функции, в которые можно опять вкладывать функции и так до бесконечности)
[18:59:12] <valexey> Этим же грешат и новые языки. Например Ява. И шарп
[18:59:18] <valexey> И, кстати, D.
[19:08:01] <vlad2> Ну типа это стремление иметь связанные сущности рядом. Проблема, ИМХО, чисто читабельная.
[19:08:25] <vlad2> В какой-то момент оказывается удобнее положить отдельно, чем все вместе.
[19:09:25] <valexey> дык все в программирование (ну ладно, не все, а 70 процентов) это проблемы читабельности и, как следствие, понимабельности кота
[19:09:35] <vlad2> Кстати, именно во вложенных функциях особенно проявляется дебилизм тамошнего this.
[19:09:45] <valexey> а что там?
[19:10:44] <vlad2> В жабаскрипте у каждой функции свой this. Поэтому просто выделив код в функции легко получишь ошибку рантайма (которая не всегда и проявится).
[19:11:15] <vlad2> Просто потому, что забыл убрать this.
[19:11:33] <vlad2> Появляется такой дебильный код:
[19:11:37] <valexey> ололо
[19:11:41] <vlad2> var self = this;
[19:11:58] <vlad2> function helper() { self.field =... }
[19:14:52] <vlad2> В питоне тоже получишь ошибку рантайма - но ты ее получишь всегда и внятно :)
[19:15:34] <valexey> ох уж эти недоязыки… авторы которых ниасилили проверку типов на этапе компиляции
[19:15:52] <valexey> я их понимаю в принципе, без статической типизации трансляторщику жить намного проще и веселее
[19:16:14] <vlad2> Рефакторить тоже проще. Если тесты есьт :)
[19:17:25] <valexey> та с фига ли проще то?
[19:17:29] <vlad2> Ибо не надо бороться с типами.
[19:17:29] <valexey> "BTstackManager only handles activation and discovery at the moment. I didn't work on that since a while. At one point I run into design issues which I wasn't sure how to resolve them. So my recommendation is to use it for activation and discovery, and do the rest manually. That's why there are l2cap and rfcomm methods defined, but not implemented."
[19:17:37] <valexey> ога, надо бороться с тестами :-)
[19:17:53] <valexey> ня. жопа с блютусом
[19:18:01] <vlad2> Я уже говорил - ошибки тестов может оказаться починить быстрее, чем ошибки компиляции.
[19:18:04] <valexey> 300 строк кода чтобы по spp строчку текста послать.
[19:18:15] <valexey> зависит от…
[19:19:11] <vlad2> Конечно зависит.
[19:21:09] <vlad2> А еще там удобно делать прокси (именно это сейчас делаю на плюсах - целая проблема).
[19:21:19] <vlad2> И без message bus ;)
[19:21:29] <valexey> о боже! а как же иначе то?!
[19:22:16] <vlad2> Пять строк на питоне :)
[19:22:49] <valexey> это все потому, что питон не язык общего назначения!!1
[19:23:23] <vlad2> И это правильно 6)
[19:54:45] <valexey> /me докатился
[19:54:57] <valexey> /me рекламирует Оберон микроконтроллерщику
[20:01:22] <vlad2> И как оно? Поддается? :)
[20:01:52] <valexey> удивляется как они умудряются сборщег мусора в 4 КБ ОЗУ засунуть :-)
[20:02:07] <valexey> долго объяснял что они не умудряются, а просто не реализуют никакого сборщика мусора :-)
[20:02:15] <valexey> ибо в языке нет никакого сборщика мусора
[20:02:20] <valexey> ни единого упоминания же!
[20:10:15] <vlad2> "Думал он думал (над дизайном), и выбрал ту, у которой грудь больше".
[20:10:49] <valexey> хто?
[20:10:51] <vlad2> Нах. Будет в конструкторе еще один параметр.
[20:10:59] <vlad2> Да анекдот был.
[20:12:38] <vlad2> Было у одного преуспевающего бизнесмена 3 любовницы. Надумал он наконец жениться, но никак не мог решиться какую выбрать. Наконец по совету своего приятеля дал им каждой по 50 тысяч и сказал прийти через 3 месяца.
Первая потратила деньги на изысканную одежду, массажные салоны, спа и прочие омолаживающие учреждения. Пришла к нему выглядя, как королева красоты, подвела его к зеркалу и сказала:" Вот видишь как у тебя будет выглядеть жена, если
я ей стану"
Вторая потратила все деньги на то, что вылизала весь дом своего любовника, привела его самого в порядок, накупила ему
одежды, так, что он стал смотрется как денди и в конце трех месяцев подвела его к зеркалу и говорит:" Вот видишь
как ты будешь выглядеть, если я буду твоей женой"
Третья взяла деньги и отправилась на биржу. Удачно играя, она сумела удвоить капитал и принесла в конце трех месяцев
назад 100 тысяч: "Вот видишь как у тебя удачно пойдут дела, если ты женишься на мне."
Подумал наш герой, подумал и выбрал........... ту, у которой сиськи больше.
[20:14:40] <valexey> :-D