[00:00:13] <valexey> то есть вообще не могу представить
[00:00:22] <genieprox> ну как можно прочесть семантику??? она же нечитабельна без синтаксиса )
[00:00:30] <valexey> я могу понять зачем это скрещивают при описании языка, но при разработке...
[00:01:03] <valexey> почему? читабельна. сразу говоришь как что отображается на структуры данных, какие алгоритмы лежат под каждой семантической сущностью и так далее
[00:01:20] <genieprox> это всё равно что вслепую рисовать чертёж ))) или вслепую лепить кувшин на гончарном круге )))
можно, но сложно )))
[00:01:55] <valexey> неа.
[00:02:14] <valexey> выпиши для начала список семантических сущностей на листочек.
[00:02:30] <valexey> потом нарисуй их связи. потом опиши алгоритмы и структуры данных под ними.
[00:02:34] <genieprox> на русском есть нормальное описание семантики языка? сделанное серьёзно, как в Аде?
[00:02:39] <valexey> потом все это реализуй в компилятор.
[00:02:53] <valexey> как оно заработает хорошо, вот тогда можно заняться синтаксисом.
[00:03:16] <genieprox> тогда уж получится не компилятор, а что-то вроде VM
[00:03:16] <valexey> genieprox: я видел среди функциональных маньяков описалово как язык строился
[00:03:34] <valexey> genieprox: почему? оно вполне себе может компилять в llvm или в x86 код
[00:04:03] <genieprox> а исходник-то как туда завести, если синтаксиса для него нету? )))
[00:04:28] <valexey> дык непосредственно семантическим деревом
[00:04:38] <valexey> отображение его может быть любое удобное - например xml
[00:04:43] <valexey> или json
[00:04:45] <valexey> или sexp
[00:04:47] <genieprox> а как это дерево ввести в комп? телепатически что ле???
[00:04:50] <valexey> как удобней
[00:05:24] <genieprox> если использовать тот же xml или sexp -- то вот уже убогий, но СИНТАКСИС!!!111
[00:05:53] <valexey> штука в том, что его не нужно описывать
[00:06:01] <valexey> и парсер самому писать не нужно
[00:06:32] <genieprox> всё равно придётся описать, что бы знать, что можно записывать, а что нет
[00:06:36] <valexey> можно хоть вообще графически это дерево строить :-)
[00:07:05] <valexey> неа. не нужно. достаточно описать семантическое дерево, а сериализация и десериализация его дастся даром
[00:07:15] <valexey> если конечно ты пишешь компилятор на нормальном языке
[00:12:09] <kemiisto> у меня на рабочем столе в вынде появилась НЕВЕДОМАЯ ЁБАНАЯ ХУЙНЯ!!!111
[00:12:11] <kemiisto> :D
[00:12:26] <kemiisto> ЗЕЛЁНЫЙ КВАДРАТЬ, БЛЕЯТЬ!
[00:12:35] <genieprox> о_О гаджет какой-нить? ))
[00:12:45] <kemiisto> genieprox: хуяджет
[00:12:50] <kemiisto> вирусня!!!111
[00:12:52] <kemiisto> :D
[00:16:12] <kemiisto> из твиттера
[00:16:16] <kemiisto> >> Основной формой государственного устройства Российской Федерации является ёбаный стыд
[00:16:20] <kemiisto> XD
[00:16:55] <genieprox> так чо быстрее??? спп или таки фортранище?
[00:17:58] <kemiisto> genieprox: если gcc vs gfortran то на таких задачичиках одно и тоже будет же!
[00:18:09] <valexey> у фортранища же нет libgmp :-)
[00:18:20] <valexey> там что-то свое
[00:18:26] <kemiisto> valexey: есть ISO_C_BINDIG
[00:18:28] <valexey> и я явно не осилю переписать фортран
[00:18:39] <kemiisto> можно попробовать, конечно
[00:18:55] <kemiisto> но блядь в сишечных кодах ковыряться
[00:19:06] <kemiisto> но уж тогда то точно будет одно и тоже время
[00:19:08] <kemiisto> :D
[00:20:13] <valexey> kemiisto: ну, вот у хаскеля получилось не то же самое время :-)
[00:20:25] <valexey> так что фортран возможно ждет такой же успех :-)
[00:20:26] <kemiisto> valexey: *LOL*
[00:20:35] <kemiisto> valexey: вот уж врядли
[00:21:20] <genieprox> так надо нормальный фортран взять!!! интеловский! и интеловски же с++
[00:21:51] <kemiisto> на таких задачках разницы не будет
[00:22:06] <kemiisto> тут оптимизатору хитрому развернутся особо негде
[00:22:14] <genieprox> даже если хаскелл в среднем отстаёт от с в 2.5 раза (на шутауте) -- всё равно это не в 500 раз )))
[00:22:32] <genieprox> а вдруг он его векторизует? )))
[00:22:41] <kemiisto> genieprox: шутат - чушь
[00:22:44] <valexey> дык и плюсы векторизует
[00:22:53] <valexey> какая разница? :-)
[00:22:57] <kemiisto> ты так в жизни не будешь писать ни на хаскеле, ни на плюсах
[00:23:01] <kemiisto> как там пишут
[00:23:02] <valexey> даже gcc векторизует
[00:23:17] <genieprox> эм.. я чота не понял -- сишное решение матричной задачи существует? пока там тока ввод матрицы и всё...
[00:23:35] <valexey> genieprox: первое наивное решение было в 500 раз тормозней :-) что как бэ намекает. банально в 10ти строчках.
[00:23:47] <valexey> а теперь представь себе сколько такого будет в реальном проекте
[00:23:58] <valexey> genieprox: нет, пока её нет
[00:24:02] <genieprox> наивное решение -- другой алгоритм просто. аналогичное решение на сях будет таким же тормозом
[00:24:41] <genieprox> в первом решении я перебирал дохера чисел, что бы все делители получить.
во втором решении я перебирал только часть делителей
[00:25:16] <genieprox> и не было там 10 строчек ))
[00:25:19] <valexey> но ни на сях ни на КП не было такого решения
[00:25:28] <valexey> следовательно хаскель провоцирует на такие решения
[00:25:41] <genieprox> да нифига! у мя на сях такое же было бы )))
[00:26:26] <valexey> ок. так и запишем - сишних падший до хаскеля, пишет хреново и там и сям
[00:27:33] <genieprox> да нифига! просто вначале я толком не думал, а потом сделал оптимизацию!!!
[00:27:39] <valexey> гыгы
[00:28:17] <genieprox> а интересно, GNU Modula-2 кто нить реально использует?
[00:28:23] <valexey> таким образом, хаскельная хорошо оптимизированная программа будет тормознее сишной всего то в 2.5 раза.
[00:28:43] <kemiisto> valexey: я думаю на реальной задач
[00:28:45] <kemiisto> е
[00:28:50] <kemiisto> отнюдь не 2.5
[00:28:54] <kemiisto> :D
[00:28:56] <valexey> 25?
[00:28:59] <genieprox> зависит от задачи. в некоторых случаях и быстрее -- там де рулят легкие потоки
[00:29:07] <kemiisto> 250, скорее
[00:29:18] <genieprox> клевета!!!
[00:29:36] <genieprox> тут клеветать можно тока на абирон, но не на хацкель!!!111 )))
[00:29:41] <kemiisto> valexey: а в итоге оптимизаций хаскелл программист напишет программу на си
[00:29:42] <kemiisto> :D
[00:29:43] <valexey> там где рулят легкие потоки, там РЕАЛЬНО потоки не нужны. следовательно сишная программа будет однопоточной.
[00:29:58] <valexey> и зарулит хаскельную за счет меньших накладных расходов
[00:30:11] <valexey> kemiisto: ога. с обертками в виде хаскель-функций
[00:30:15] <valexey> также как и питонист
[00:30:43] <genieprox> в итоге 10% кода, выполняющиеся 90% времени, будут переписаны на сишник и включены в общий код. всего и делов )))
зато вся задача будет решена в 2 раза быстрее!!!
[00:31:09] <valexey> ога-ога. старые мифы о оптимизации :-)
[00:31:14] <genieprox> нет, в 20 раз быстрее )
[00:31:25] <kemiisto> я давно говорю - ФП нинужно!
[00:31:42] <genieprox> принцип парето не может устареть!!!
ну ладно 20% и 80% -- не принципиально ))
[00:31:44] <valexey> а на самом деле будет так: http://habrahabr.ru/blogs/programming/126818/
[00:38:25] <genieprox> валексей, как насчёт такого варианта:

module Main where

main :: IO ()
main = do
   n <- readLn :: IO Integer
   putStrLn $ if perfect n then "Да" else "Нет"
 where
   perfect x = x == sum (1 : [ i + d
                             | i <- takeWhile (<= x') [2..]
                             , let (d, m) = x `divMod` i
                             , m == 0
                             ])
     where
       x' = truncate $ sqrt $ fromInteger x

оно у меня выполнилось в полтора раза быстрее предыдущего )
[00:41:15] <valexey> чуть быстрее. 10-11 секунд
[00:41:39] <valexey> один фиг у C++ отсасывает в присядку :-)
[00:41:56] <genieprox> странно. что за версия GHC?
[00:42:43] <valexey> $ ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.12.1
[00:49:17] <valexey> гы
[00:49:28] <valexey> yesod -- framework for type-safe, RESTful web applications
[00:49:39] <valexey> это в категории Haskell в репе лежит
[00:49:54] <valexey> http://www.yesodweb.com/
[00:49:56] <genieprox> ну да, а что? ))
[00:50:10] <genieprox> правда он сука под линупсы, на венде не завёлся (
[00:50:11] <valexey> веб на хаскеле. извращенцы
[00:50:39] <genieprox> да намана! вебсерверы на хацкеле жутко быстрые. но не у всех, а у тех, кому надо )
[00:50:47] <valexey> :-D
[00:51:27] <valexey> ну, абсолютное большенство серверов на линуксе крутится, так что понятно почему поддержкой альтернативных осей никто особо не заморачивается.
[00:51:56] <genieprox> да всего-то половина серверов на линупсе
[00:52:08] <genieprox> остальные на венде уже давно )
[00:52:16] <valexey> ты про сервера, или про хосты? :-)
[00:52:30] <valexey> по числу СЕРВЕРОВ будет процентов 80
[00:52:53] <valexey> /me ме-едленно курит OpenGL
[00:59:49] <kemiisto> valexey: забей говорю
[00:59:58] <kemiisto> используй что-то более высокоуровневое
[00:59:59] <valexey> kemiisto: э?
[01:00:06] <valexey> мне для работы надо
[01:00:06] <kemiisto> только время зря тратишь
[01:00:14] <kemiisto> его годами учать
[01:00:23] <valexey> мне нужно быстро рисовать 2D на iPhone
[01:00:31] <kemiisto> чтобы хоть что-то более-менее производительное написать
[01:00:41] <kemiisto> там же куча движков!
[01:00:54] <kemiisto> вы ебанулись такое на OGL писать!?
[01:01:05] <kemiisto> вам нужен опытный 3D-кодер
[01:01:09] <kemiisto> ОЧЕНЬ
[01:01:11] <valexey> а на чем? просто рисовать через кварц - медленно
[01:01:11] <kemiisto> ОПЫТНЫЙ
[01:01:26] <kemiisto> valexey: OGL будет ещё медленнее
[01:01:34] <valexey> ня?
[01:01:46] <valexey> ну надо хоть попробЫвать
[01:01:49] <valexey> :-)
[01:01:55] <kemiisto> пока ты не заюзаешь VBO
[01:02:04] <kemiisto> шейдеры
[01:02:09] <kemiisto> и прочую хуиту
[01:02:18] <valexey> та мне тупо график реалтаймовый рисовать
[01:02:21] <kemiisto> а это таки очень нетривиальные вещи
[01:02:37] <kemiisto> а результаты уже есть?
[01:03:06] <kemiisto> я в смысле
[01:03:24] <kemiisto> с чего вы взяли, что на OpenGL напишите более быстрый код отрисовки?
[01:03:57] <valexey> c того, что кварц очевидно не справляется. и надо просто хотя бы попробовать опенГл
[01:05:16] <valexey> "OpenGL — удобный инструмент для создания кроссплатформенных приложений, использующий графику. OpenGL легко использовать с тем языком программирования, который вам более удобен. "
[01:05:27] <valexey> вот. и я в это верю!
[01:06:14] <valexey> ой. говорят glBegin выпилили
[01:11:34] <valexey> "Я тоже начинал с glBegin, glEnd, glVertex.
Когда мне понадобилось написать первое OpenGL приложение для Android, я обнаружил, что в OpenGL ES уже нет ни glBegin ни glEnd ни glVertex, оно и к лучшему =)

Так что лучше сразу думать в терминах glDrawArrays, glDrawElements итд."
[01:14:33] <valexey> "А если серьезно, то, по моим субъективным ощущениям, сочетание плюсового ооп с процедурами гл вызывает подсознательно какой-то дискомфорт, хочется создавать объекты. "
[01:14:40] <valexey> "хочется создавать объекты."
[01:14:42] <valexey> :-)
[01:15:09] <kemiisto> это в ES
[01:15:12] <kemiisto> выпилилы
[01:15:17] <kemiisto> он вообще урезанный
[01:17:22] <valexey> в 3.3 тоже вроде бы деприкейтед
[01:17:57] <valexey> мне как раз ES актуален
[01:20:29] <valexey> http://usefulbytes.blogspot.com/2009/04/opengl-3.html
[01:20:42] <valexey> "Чем отличается OpenGL 3.0 от более младших версий? Все просто - вся поддержка FFP (fixed function pipeline) переведена в ряд морально устаревших вещей, а точнее помечена deprecated. Это конечно не все, еще часть функций из расширений перекочевала в ядро, но самое важное изменение именно отказ от FFP. Сразу замечу что в OpenGL 3.1 уже убрали все что было помечено deprecated."
[01:20:59] <valexey> "Чем же грозит отказ от FFP? В первую очередь убран так называемый immediate mode*, это различные функции вроде glVertex, glNormal и т.п. Пользоваться glBegin/glEnd больше нельзя. Убрали glVertexPointer, glNormalPointer и т.п.. Убрали операции с матрицами, т.е. различные glLoadIndentity, glMultMatrix, glLoadMatrix, glOrtho, glFrustum и т.п. "
[01:24:30] <valexey> "Здесь matrix4 это typedef float matrix4[4][4], все очень просто. Ну а дальше вы берете эту матрицу и отправляете ее в шейдер, вместе с видовой матрицей, делается это вызовом функции glUniformMatrix4fv."
[01:24:35] <valexey> очень просто o_O
[01:28:04] <kemiisto> valexey: это слёзы
[01:28:06] <kemiisto> :D
[01:28:16] <valexey> э,
[01:28:20] <valexey> ?
[01:28:27] <kemiisto> valexey: а де твоё решение с GMP?
[01:28:35] <kemiisto> ты, вроде, постил
[01:28:36] <valexey> дык тут пролетало
[01:29:02] <kemiisto> valexey: эммм... не могло бы оно ещё раз пролететь?
[01:29:04] <kemiisto> :D
[01:29:14] <valexey> #include <gmpxx.h>
#include <iostream>

int main()
{
   mpz_class n;
   std::cin >> n;
   mpz_class last = n;
   mpz_class d,res=n-1;
   for (d=2; d<last; d=d+1)
       if (0==(n%d)) last = n/d, res-=d+last;
   std::cout <<  (0==res ? "Yes\n" : "No\n");
   return 0;
}
[01:29:22] <kemiisto> ога
[01:29:38] <valexey> по сути только заменил int на mpz_class
[01:29:44] <valexey> ну и причесал малек кот
[01:37:11] <valexey> GLSL (OpenGL Shading Language) — язык высокого уровня для программирования шейдеров. Синтаксис языка базируется на языке программирования ANSI C, однако, из-за его специфической направленности, из него были исключены многие возможности, для упрощения языка и повышения производительности.
[01:52:39] <genieprox> ну писец! час пытаюсь отладить прогу с паралельным вычислением, а компилирую совсем не тот исходник )))) и думаю, чоза херня, почему не пашет )))
[01:55:23] <valexey> :-)
[01:55:34] <genieprox> есть нагрузка на оба ядра ))
[01:59:11] <valexey> ога-ога как это было...
[01:59:15] <valexey> "Современные браузеры используют лишь часть вычислительной мощности компьютера, в то время как Internet Explorer 9 задействует весь его потенциал."
[02:10:56] <valexey> "Вижу ссылку "скачать ие9", перехожу, читаю "Современные браузеры используют лишь часть вычислительной мощности компьютера, в то время как Internet Explorer 9 задействует весь его потенциал.", закрываю..."
[02:11:53] <kemiisto> :D
[02:15:58] <genieprox> http://oberspace.dyndns.org/index.php/topic,142.msg2276.html#msg2276
[02:16:03] <genieprox> и всё, я спать )
[02:17:44] <valexey> bye
[03:20:53] <kemiisto> ДА!
[03:20:55] <kemiisto> КРОВЬ!
[03:20:56] <kemiisto> :D
[03:24:36] <valexey> э,
[03:24:39] <valexey> ?
[03:24:43] <valexey> где кровь?
[03:24:57] <kemiisto> хоккей!
[03:25:02] <kemiisto> МАССОВАЯ ДРАКА!
[03:25:05] <kemiisto> :D
[03:25:16] <valexey> ужас
[03:35:38] <kemiisto> 2-0!!!
[03:35:43] <kemiisto> ВПИРЁД!!!
[14:36:09] <kemiisto> .
[14:36:40] <kemiisto> valexey: ну, как там твой DooM 4?
[14:36:48] <kemiisto> :D
[14:38:16] <valexey> э?
[14:38:32] <kemiisto> OPENGL же!!!111
[14:38:37] <kemiisto> МЫ ЖДЁМ!
[14:38:45] <valexey> я запутался нафиг :-)
[14:39:01] <valexey> в современном opengl'e как-то все совсем уж брутально стало
[14:39:17] <valexey> готовых матриц нет. примитивов нет. сплошные шейдеры.
[14:39:27] <valexey> glBegin тоже нет
[14:39:52] <kemiisto> valexey: я тебя предупреждал
[14:40:01] <kemiisto> OpenGL это вам не тут
[14:40:11] <valexey> да еще и язык какой-то свой для оных шейдеров
[14:40:23] <kemiisto> угу
[14:41:03] <valexey> одному из студентов-кандидатов в стажеры дали на дом задание - сделать масштабирование изображения в формате yuv420p (то не НЕ rgb). Посмотрим справится или нет :-)
[14:41:17] <valexey> Вроде задачка простенькая, но, однако ж, там много тонкостей
[15:52:29] <kemiisto> valexey: на обероне пусть решает!!!1111
[15:52:52] <valexey> kemiisto: ненене. решение на обероне – это приговор!
[15:53:24] <kemiisto> /me поставил Thunderbird
[15:53:52] <kemiisto> он, сука, мне в ИСХОДЯЩИХ каждое второе письмо помечяет как Junk
[15:53:55] <kemiisto> :D
[15:54:59] <valexey> :-)
[15:55:07] <valexey> kemiisto — спамер!!1
[15:56:19] <geniepro> опенсорс же ))
[16:01:07] <kemiisto> geniepro: ты про что?
[16:01:13] <kemiisto> про задачу его?
[16:01:47] <kemiisto> так пусть использует
[16:01:54] <kemiisto> собственно должен даже
[16:01:54] <geniepro> про сандербёод у него )
[16:02:09] <kemiisto> geniepro: у него это у меня?
[16:02:11] <kemiisto> :)
[16:02:22] <geniepro> или у тебя ))) неважно )))
[16:02:30] <kemiisto> ВАЖНО!!!111
[16:02:44] <geniepro> какая разница? думаешь я не знаю? )))
[16:02:52] <geniepro> ты и валексей -- одно лицо ))))
[16:03:03] <kemiisto> гы :D
[16:03:11] <kemiisto> и Info21 с нами!
[16:03:16] <geniepro> агага
[16:18:56] <valexey> таки сишечка порвала хаскель на британский флаг :-) это радует ;-)
[16:25:02] <geniepro> да нифига! это неправда )))
[16:25:10] <geniepro> это ниразу не радует ))))
[16:26:42] <valexey> почему же? :-) си рулит ;-)
[16:27:23] <valexey> "вы можете заморачиваться многопоточность, а можете просто писать без заморочек однопоточную программу на С++ - по времени исполнения будет одинаково, по энергозатратам - во втором случае будет многократно меньше"
[16:27:25] <valexey> :-)
[16:27:50] <valexey> да и по числу проблем думаю тоже во втором случае будет меньше :-)
[16:28:58] <geniepro> http://corp.galois.com/haskell-course
у кого есть лишние 1600 баксов? )))
[16:29:48] <geniepro> sisal в своё время рвал си как грелку
именно за счёт использования SMP
[16:31:05] <valexey> ну, пока у тебя не получается :-)
[16:31:22] <valexey> кроме того, я вообще не вижу проблем распараллеливания сишной версии
[16:31:31] <geniepro> а я не сильно стараюсь )))
[16:31:53] <geniepro> реквестирую параллельную версию сишного варианта )))
[16:32:04] <geniepro> и что бы работало в TinyCC )))
[16:32:09] <geniepro> иначе это не си )))
[16:32:52] <valexey> все будет по стандарту.  по POSIX.1
[16:32:59] <geniepro> вечером дома попробую сделать эквивалент сишного варианта -- без списков. интересно, какой оверхед они дают
[16:33:43] <valexey> БОЛЬШОЙ!!1
[16:34:29] <geniepro> нифакт )
[16:35:13] <valexey> если не большой, значит хаскель говно целиком :-) а так было бы только частично.
[16:38:46] <geniepro> клевета!! это просто погода неважная сёдня )))
[16:39:12] <geniepro> http://bos.github.com/strange-loop-2011/talk/talk.html
[16:40:04] <geniepro> надо ещё попробовать Data Parallel Haskell
я его правда уже забыл )))
[16:49:48] <valexey> geniepro: STM!
[16:51:01] <geniepro> не, STM слишком тяжёл для такой задачки ))
[16:52:28] <valexey> кстати! я правильно понимаю, что при использовании STM можно легко напороться на livelock?
[16:53:44] <geniepro> с чего бы это? о_О
[16:53:52] <geniepro> и что это? )))
[16:54:40] <valexey> это когда прочитал память, посчитал результат, проверил, не изменилась ли эта память пока считал, если нет, то написал результат, если да, то пошел считать заново
[16:54:56] <valexey> так вот, ливлок это когда "пошел считать заново" случается почти постоянно
[16:56:17] <geniepro> ну так надо транзакцию же делать!
открыл транзакцию, прочёл, посчитал, записал, закрыл транзакцию )))
[16:57:04] <valexey> дык именно! открыл транзакцию, прочел, посчитал, попробовал закоммитить, ан обломись, заново считать надо
[16:57:11] <valexey> транзакция не прошла
[16:57:13] <valexey> ибо
[16:57:43] <geniepro> с чего это вдруг???
[16:58:00] <geniepro> почему в базах данных такой херни нет, а в STM вдруг будет???
[16:58:12] <valexey> кто сказал что нет?
[16:58:20] <geniepro> а что, есть? о_О
[16:58:38] <valexey> в stm будет чаще, потому что оно сурово именно для многопоточности используется.
[16:59:00] <valexey> livelock, на ряду с deadlock'ом - классическая проблема при любой многопоточности.
[16:59:19] <kemiisto> ТРОЛЛОТА ОЖИВИЛАСЬ НА ОБЕРОСПЕЙС!
[16:59:21] <kemiisto> :D
[16:59:53] <geniepro> вот из-за этого, походу, в .net и обломались сделать stm, оно тока в нормальных языках возможно -- типа хаскелла )))
[17:00:44] <kemiisto> если что-то возможно в хаскелле, оно уже нинужно
[17:00:45] <kemiisto> :)
[17:01:01] <valexey> нормальные языки - это которые тормозят всегда, даже после оптимизаций? :-)
[17:01:11] <kemiisto> ТОЛСТО!
[17:03:08] <geniepro> всё я домой )))
[17:03:19] <valexey> стоять! ща будет история!
[17:03:23] <valexey> ну и фиг с тобой
[17:05:45] <valexey> товарищ вот рассказывал историю - лет 12 назад, когда он учился, была java была жутко модной темой, ну, примерно как haskell сейчас. И вот проходит конференция по параллельным вычислениям, кто-то MPI использует на фортране для рассчета сплошных сред на кластерах, кто-то на С подобное ваяет и С++… И тут с какого-то универа выступают товарищи. Товарищи написали считалку какой-то задачи (по моему это была какая-то химическая вычислительная задача) на java и распараллелили на 20 машин. Успешно. Все хорошо, все довольны (модная java позволившая так легко распараллелить аж на 20 машин - круто!) и тут им задают один вопрос - а с какой скоростью относительно скорости java работал бы узел такой системы если бы его написали на C/С++? Ну они и отвечают - ну, раз в 20 быстрее работало бы…
[17:06:43] <kemiisto> :D
[17:06:46] <kemiisto> ГЫ!
[17:09:05] <valexey> kemiisto: заметь, с хаскелем происходит та же история :-)
[17:09:37] <valexey> "догнать" си и фортран получается только загрузив "лишние" ядра
[17:10:49] <shaggie> однако же, во-первых, паралеллить можно и на бОльшее число машин, во-вторых джава с тех пор в скорострельности прибавила
[17:11:23] <valexey> shaggie: угу, но жаба то уже не модна! теперь моден хаскель!
[17:11:25] <valexey> ;-)
[17:11:52] <shaggie> хочешь сказать что х-ль тоже зохавает энтерпрайз? О_О
[17:11:57] <valexey> алсо на бОльшее число машин задачам может в принципе не параллелиться
[17:12:27] <valexey> shaggie: ну, есть поползновения. но я больше про то куда смотрят прогрессивные программеры
[17:13:30] <shaggie> кстати говоря отставание х-ля в полтора раза от си на каком-то вчерашнем примере - это просто отличный результат, я считаю, тем более что задачи нынче далеко не только в процессорные мощности упираются
[17:14:42] <kemiisto> shaggie: гы
[17:14:49] <kemiisto> а ещё в память да
[17:14:58] <kemiisto> и ту х-л, конечно, рулид
[17:15:00] <kemiisto> блядь
[17:15:01] <kemiisto> :D
[17:15:05] <shaggie> память бесконечная, prooven by Java
[17:15:25] <kemiisto> shaggie: гы
[17:15:33] <kemiisto> есть такие задачки
[17:15:35] <kemiisto> например
[17:15:54] <kemiisto> более-менее точные расчёты характеристик молекулы в сильном магнитном поле
[17:16:12] <kemiisto> где просто для хранения одного шага оптимизации
[17:16:22] <kemiisto> нужно over 64ГБ памяти
[17:16:41] <kemiisto> а хранить нужно как минимум 3 шага
[17:16:50] <kemiisto> JVM такое никогда не будет уметь
[17:17:10] <kemiisto> она 4ГБ то не на всех ОС способна выделить под кучу
[17:17:15] <kemiisto> а тут такое
[17:18:56] <kemiisto> вот, кстати, где людям реально были нужны SSD
[17:18:58] <shaggie> > JVM такое никогда не будет уметь
под x64 выделяет сколько захочешь
[17:19:03] <kemiisto> :D
[17:19:12] <kemiisto> shaggie: на Виндовс - нет
[17:19:14] <kemiisto> :D
[17:19:20] <kemiisto> толсто, знаю
[17:19:27] <kemiisto> Виндавс - всегда толсто!
[17:19:43] <kemiisto> shaggie: та жава сакс!
[17:19:47] <kemiisto> чё тут спорить!!!111
[17:19:50] <kemiisto> :)
[17:20:53] <shaggie> /me внезапно обнаружил что защищает джаву
[17:21:00] <shaggie> да я какбэ не спорю
[17:21:16] <shaggie> каждой задаче свой молото... инструмент :)
[17:23:06] <kemiisto> http://demotivation.me/py14z1u7p6a2pic.html
[17:23:12] <kemiisto> ПРЕЛЕСТНО!!!111
[17:25:46] <kemiisto> >> вообще, прожить жизнь и не трахнуть школьницу или азиатку (в идеале школьницу-азиатку) - значит прожить зря
[17:25:49] <kemiisto> :D
[17:27:03] <valexey> shaggie: я знаю что для хаскеля отставание от Си в два раза - отличный результат. только вот меня такой отличный результат не устраивает
[17:27:17] <valexey> ибо есть большая разница например при звонке - будет у тебя видео в 30 кадров в секунду, или в 15ть
[17:27:50] <kemiisto> valexey: просто решается
[17:27:59] <kemiisto> в графе системные требования
[17:28:02] <kemiisto> повяляется
[17:28:10] <kemiisto> четырёхядерный процессор
[17:28:13] <kemiisto> :D
[17:28:28] <valexey> kemiisto: а там далеко не все параллелится легко :-)
[17:28:57] <valexey> алсо оконечные устройства разные, в том числе нетбуки, с атомом.
[17:32:34] <valexey> и также просто смартфоны
[17:33:41] <kemiisto> таки я не понимаю
[17:33:49] <kemiisto> столь бурного бурления говн
[17:33:54] <kemiisto> вокруг Тандема
[17:33:56] <kemiisto> :)
[17:35:49] <valexey> какого Тандема?
[17:36:17] <kemiisto> valexey: типа не понял? :D Путин-Медведев
[17:36:26] <valexey> а, это то.
[17:36:45] <valexey> они читеры - нашли дыру в правилах игры и таким макаром могут теперь сколь угодно долго править :-)
[17:37:58] <kemiisto> valexey: iddqd? :D
[17:38:26] <valexey> ну, типа того
[17:38:31] <valexey> и у всех просто баттхерт
[17:39:48] <shaggie> но бурлят так будто никто не ожидал
[17:40:52] <valexey> ну, внезапно же! хотя, давно же сказали про эту дыру и намекали что путен этим воспользуется.
[17:41:27] <valexey> вообще конечно эту бы энергию… да на оберонкоре…
[17:41:30] <valexey> :-)
[17:45:41] <valexey> kemiisto: кстати! http://habrahabr.ru/blogs/Haskell/129235/
[17:45:42] <valexey> :-D
[17:49:57] <valexey> то есть столько траходрома лишь для того, чтобы файлы в один склеить… жесть же!
[17:51:52] <kemiisto> valexey: да, весело
[17:51:54] <kemiisto> ;)
[17:53:34] <valexey> я понимаю если б они там sip-proxy на haskell'e написали бы хотя бы.
[17:53:37] <valexey> stateless
[17:53:43] <valexey> ну или stateful
[17:53:59] <valexey> или там centrex какой-нибудь
[17:54:15] <valexey> а то наколенную консольную утилиту написали и рады.
[17:54:38] <valexey> которая пишется ВООБЩЕ НА ЛЮБОМ ЯЗЫКЕ.
[18:00:40] <valexey> http://habrahabr.ru/blogs/telecom/129232
[18:12:04] <valexey> "Код более причесан, даже бесточечный стиль в наличии."
[18:23:26] <shaggie> "A DBA walks into a NOSQL bar, but turns and leaves because he couldn't find a table"
[18:25:03] <valexey> :-)
[18:31:59] <kemiisto> valexey: В Обероне сохранилось деление на описательный (интерфейсный) и исполнительный модули с той принципиальной разницей, что описательный модуль готовится теперь уже не проектировщиком (программистом), как в Modula-2, а автоматически формируется компилятором из исполнительного модуля на основе спецификаторов экспорта (звездочек у каждого экспортируемого объекта, включая отдельные поля записей). Относительным неудобством стала необходимость для получения спецификации (интерфейса) фиктивной (вырожденной) реализации модуля. Зато во всем остальном были весьма элегантно решены проблемы модульного программирования.
[18:32:11] <kemiisto> вот, мы к этому же и пришли тогда
[18:32:26] <kemiisto> к реализации-пустышке
[18:32:31] <kemiisto> в смысле
[18:33:04] <valexey> угу. и ручным контролем соответствия
[18:33:19] <kemiisto> valexey: вообще клеветы же!
[18:33:23] <kemiisto> это в ББ так
[18:33:29] <kemiisto> там в ран-тайм проверяется
[18:33:45] <kemiisto> но никто тебе не запрещает сделать свой Oberon-X
[18:33:52] <kemiisto> с сам знаешь чем
[18:33:55] <kemiisto> :D
[18:34:00] <valexey> :-)
[18:34:32] <kemiisto> valexey: там дальше весело написано
[18:34:34] <kemiisto> В Обероне появилось еще одно интересное решение, связанное с модульным программированием. Понятие программы исчезло.
[18:34:36] <kemiisto> :D
[18:34:44] <kemiisto> Столстить же можно!
[18:34:56] <kemiisto> А в Обероне-2 исчезло и само программирование.
[18:34:57] <kemiisto> :D
[18:35:34] <valexey> :-D
[18:36:03] <valexey> ну, вообще то единицы исплнения с несколькими точками входа - рудимент.
[18:36:10] <valexey> а раньше да, было распространено
[18:36:12] <valexey> ДО оберона
[18:36:27] <kemiisto> а мне нравится
[18:37:10] <valexey> ну оно до сих пор поддерживается во многих форматах
[18:37:12] <valexey> и в elf
[18:37:15] <valexey> и в mach-o
[18:37:20] <valexey> и по моему даже в зу
[18:37:21] <valexey> PE
[18:38:16] <valexey> портабля ексекутобля
[18:38:17] <valexey> вот
[19:20:36] <kemiisto> valexey: мышь таки самый годный DE для этих ваших линуксов
[19:20:40] <kemiisto> GNOME убог
[19:20:54] <kemiisto> KDE нестабилен
[19:20:59] <kemiisto> и тяжеловат
[19:21:09] <kemiisto> XFCE лёгок
[19:21:19] <kemiisto> но при этом в нём есть всё нужное
[19:21:27] <kemiisto> более лёгкии DE
[19:21:34] <kemiisto> например, LXDE
[19:21:44] <kemiisto> страдают отсутствием
[19:21:55] <kemiisto> банально нормального терминала
[19:22:15] <kemiisto> жуткой интеграцией прилад, заточенных под другие DE
[19:22:18] <kemiisto> и пр.
[19:22:20] <kemiisto> ;)
[19:23:16] <kemiisto> valexey: а ты что используешь?
[19:23:28] <kemiisto> чОрную консоль?
[19:35:54] <genieprox> valexey> shaggie: я знаю что для хаскеля отставание от Си в два раза - отличный результат. только вот меня такой отличный результат не устраивает
valexey> ибо есть большая разница например при звонке - будет у тебя видео в 30 кадров в секунду, или в 15ть

ну тогда в опу си, вперёд, ассемблер!!!111  )))
[19:50:04] <kemiisto> genieprox: с первой частью я согласен
[19:50:06] <kemiisto> ;)
[20:13:44] <valexey> genieprox: руками писаный асм далеко не всегда хорош. компиляторы сей уж больно умные нонче.
[20:14:16] <valexey> скажем сегодняшний эпичный рывок по скорости Си в задаче скорее всего обусловлен именно использованием  SIMD инструкций.
[20:14:50] <valexey> то есть алгоритм радостно распараллелился (примерно 4х кратно) при этом оставаясь в рамках одного потока.
[20:25:36] <valexey> - Давайте соберем кучу программистов в одну комнату.
- Зачем?
- Они нам что-нибудь напишут, а мы это продадим.
- А если не напишут?
- Тогда уволим и соберем новых. И так пока что-нибудь дельное не напишут.

Software Development по-русски...
[20:33:22] <genieprox> там на хаскеле надо заюзать unboxed-числа, но я пока нинаю, как это делается ))
[20:33:46] <kemiisto> http://habrahabr.ru/blogs/ubuntu/129266/
[20:33:51] <kemiisto> МОНЕТИЗАЦИЯ!
[20:34:17] <genieprox> так уже давно убунту монетизировалась же
[20:34:59] <valexey> genieprox: вот! ч.т.д! чтобы эффективно писать на х-е, нужно извращаться!
[20:35:08] <valexey> причем ОЧЕНЬ сильно
[20:35:36] <genieprox> далана. если узнать как это делается, то нетрудно!!!
[20:36:05] <valexey> "Минимальная стоимость программы в каталоге $2,99" -- что-то как-то дофига
[20:37:55] <genieprox> а кто их купит-то? чай не макинтошники, непривыли платить ))
[20:38:52] <valexey> да не. многое проще купить на самом деле. если это просто.
[20:39:11] <valexey> знаю линуксоидов которые вполне себе игры покупают под линух
[20:39:28] <genieprox> и недорого ))
за полторы штуки баксов среду разработки немногие купят )))
[20:40:22] <valexey> а за полторы штуки баксов никто и не продает ничего в том же аппсторе для мака
[20:40:37] <valexey> скажем среда разработки там стоила что-то порядка 5 баксов.
[20:40:55] <valexey> всякие ворды-не ворды от apple - 20 баксов что-ли.
[20:41:15] <genieprox> ну вот дельфы или студия в максимальноых версиях примерно 1500$ если не дороже
[20:41:34] <valexey> среда разработки за деньги - это вообще маразм.
[20:41:38] <genieprox> и кто тут кстати постоянно хаит x-code? )))
[20:42:09] <genieprox> покупают-то не саму среду, а техподдержку
[20:42:28] <valexey> дык я и студию хаю вполне себе. ибо говно же.
[20:44:44] <valexey> в смысле? каким образом мне поможет техподдержка инструментария разработки?
[20:45:19] <genieprox> ну как каким? узнать, почему компилер сделал баг, исправление бага, всякая там помощь...
[20:45:19] <valexey> если инструментарий говно и там ошибки, то они явно не пофиксят оперативно ради меня. (чтобы пофиксили надо платить далеко не пару тыщ баксов).
[20:45:50] <valexey> а узнать как обойти проблему - достаточно просто поспрошать других людей. получится как минимум оперативней.
[20:45:51] <genieprox> так техподдержка же, обязаны
[20:46:03] <valexey> пофиксить? нет, не обязаны.
[20:46:25] <valexey> они обычно предлагают воркэраунд вроде "а вы не пишите так"
[20:51:37] <valexey> кстати! техподдержка ghc вот имеет смысл. ибо хаскель такой язык, который держится целиком на не стандартных и не очевидных оптимизациях ghc. А также расширениях.
[20:51:45] <valexey> вот тут да, можно развернуться.
[20:52:09] <valexey> но опять таки - зачем для этого ПРОДАВАТЬ инструментарий? обычно продают саму техподдержку
[20:54:42] <vlad2> Досмотрел Gunbuster. Зачетная анимэшка. http://chocolatesyrupywaffles.com/wp-content/uploads/2010/01/vlcsnap-2010-01-18-14h23m02s169.png
[20:57:59] <valexey> vlad2: программирован на обероне?
[20:58:18] <valexey> а в каком месте у него торчит текст как интерфейс?
[20:59:01] <vlad2> Какой текст? Там везде графика :) Писано, естественно (для того времени), в машкодах.
[20:59:43] <vlad2> Как ни странно, советский робот там у положительной героини.
[20:59:51] <valexey> гы
[21:00:30] <vlad2> Причем эта героиня не что-то там, а прототип Аски евангелионовской.
[21:03:19] <vlad2> А вообще, конечно, теток нельзя в космос пускать...
[21:05:35] <valexey> vlad2: почему?
[21:06:06] <vlad2> В анимешке хорошо раскрывается :) Истерят много :)
[21:07:03] <valexey> ну, им сильно хочется жить. это во-первых. а во-вторых они более социальны, следовательно больше склонны болтать о проблеме нежели решать её своими силами.
[21:07:16] <valexey> гм. качнуть что-ли...
[21:07:42] <vlad2> Забей. Не особо эксайтинг. Особенно если не фанат меха.
[21:08:29] <valexey> а если фанат? :-) тем более что это ж не сериал вроде.
[21:08:32] <valexey> гм.
[21:08:36] <valexey> точнее всего 6 серий
[21:08:40] <vlad2> В смысле посмотреть можно (на мой вкус), но ожидать чего-то особенного не стоит.
[21:09:08] <vlad2> Я на нее наткнулся как на "предшественника" евангелиона. Поэтому посмотрел.
[21:10:02] <vlad2> Ну да, soviet machine конечно порадовала :)
[21:10:36] <valexey> ну, да. евангелион я несколько раз смотрел. так что думаю стоит и это посмотреть :-)
[21:11:17] <vlad2> А, ну тогда да, стоит. Там еще есть официальный gunbuster 2, но еще не смотрел.
[21:13:35] <valexey> ня. какие студенты дикие. современная молодежь похоже вообще не умеет e-mail пользоваться
[21:14:01] <vlad2> Из терминала? :)
[21:14:14] <valexey> пишу студенту письмо - мол до дедлайна осталось 2 дня, успеваешь? в копию ставлю своего напарника. студент отвечает ТОЛЬКО мне.
[21:14:24] <valexey> и так ВСЕ.
[21:14:55] <valexey> не. в принципе нет похоже практики использования e-mail'a
[21:15:33] <vlad2> А.
[21:16:54] <valexey> причем пишу одному - жми на кнопку "ответить всем" когда отвечать будешь. ога. отвечает опять только мне.
[21:17:54] <valexey> неандертальцы. дикари!
[21:17:55] <vlad2> А. Типа думает, что он лучше знает на какую кнопку давить :)
[21:18:14] <vlad2> Берете там кого-нибудь из собседованных?
[21:18:29] <valexey> мы им домашнее задание выдали в конце собеседования :-)
[21:18:37] <valexey> вот ждем пока что-то сделают ;-)
[21:29:06] <valexey> заодно смотрим какие вопросы задают и вообще как у них процесс идет
[21:57:25] <genieprox> писец, переделал на точь-в-точь сишный вариант вместо списка -- только хуже стало о_О
[22:05:03] <valexey> genieprox: оптимизация в хаскеле не очевидна и трудна. в том то и проблема его.
[23:09:26] <kemiisto> valexey: !
[23:09:33] <kemiisto> http://forum.oberoncore.ru/viewtopic.php?f=26&t=3576
[23:09:44] <kemiisto> я вот, может, чего не понимаю
[23:09:45] <kemiisto> но
[23:09:59] <kemiisto> >> Программный комплект на базе ББ устанавливается, как обычно, в Program Files.
[23:10:14] <kemiisto> А, нахуя, спрашивается, он туда устанавливается?
[23:10:32] <kemiisto> пускай валяется где-нить в Документах
[23:10:37] <kemiisto> и сё!
[23:10:40] <kemiisto> :)
[23:11:12] <valexey> kemiisto: имеется ввиду, что оный програмный компонент это специально сконфигуренный ББ.
[23:11:22] <valexey> ну нет у заказчика на компе ББ!!1 И знать он не хочет ничего про ТЕКСТКАКИНТЕРФЕЙС
[23:11:28] <kemiisto> valexey: ну и
[23:11:38] <kemiisto> что это меняет?
[23:11:55] <valexey> и. ББ обычная прога. очевидно что ставиццо оно должно в ПрограмФейлз
[23:12:21] <kemiisto> valexey: что за глупости ещё
[23:12:27] <kemiisto> ничего подобного
[23:12:35] <kemiisto> это привет из 90х
[23:12:53] <kemiisto> прикладыне подельки ДОЛЖНЫ работать из какого угодно
[23:12:54] <valexey> заказчик хочет чтобы все было кошерно. чтобы был установщик, все дела :-) хочет в пуске иконку
[23:12:55] <kemiisto> каталога
[23:13:07] <kemiisto> установщики - это вообще пиздец
[23:13:14] <valexey> не хочет руками что-то куда-то распаковывать
[23:13:23] <kemiisto> ёбаные виндо-хомячки
[23:13:30] <kemiisto> блядь не видели как должно быть
[23:13:31] <valexey> алсо сисОдминам проще одминить когда все ПО свалено в файлзах
[23:13:44] <valexey> и виндоОдмины :-)
[23:13:56] <kemiisto> винда должна умереть!
[23:13:58] <valexey> сегодня наблюдал картину - виндоОдмин и макось
[23:14:01] <valexey> картина маслом :-)
[23:14:06] <kemiisto> бедняга
[23:14:16] <kemiisto> так ведь и до суицида может дойти
[23:14:24] <kemiisto> увидить
[23:14:29] <valexey> оне пытались туда поставить офис. лицензионный. мелкомягкий!
[23:14:32] <kemiisto> как компьютер ДОЛЖЕН работать
[23:14:41] <kemiisto> valexey: он ЕБАТЬ глючный
[23:14:48] <kemiisto> 2011 который
[23:14:55] <kemiisto> это пиздец просто
[23:15:08] <valexey> скачали образ с мелкосайта. а он не монтируется! они клик-клик. полезли в гугл - там фиг. пошли костерить макос. ХОТЕЛИ ЗВОНИТЬ В САППОРТ ЯБЛОКА!!!
[23:15:10] <kemiisto> он через раз падает на копировать-вставить
[23:15:30] <valexey> не мелкософта, заметь, а яблока.
[23:15:40] <kemiisto> :-D
[23:15:48] <kemiisto> valexey: сколько им платят? :D
[23:16:00] <valexey> потом оказалось что через их кривой прокси с мелкомягкого кривого сервера скачался битый образ диска
[23:16:18] <valexey> а MD5 мелкософт конечно же ниасилил выложить.
[23:16:57] <kemiisto> valexey: это преступление просто
[23:17:13] <valexey> та маздайщики же.
[23:17:21] <kemiisto> хочеться взять и уебать
[23:17:26] <kemiisto> вот сёдни
[23:17:30] <kemiisto> скачал дисер
[23:17:34] <kemiisto> .ps
[23:17:38] <kemiisto> ёба!
[23:17:43] <kemiisto> сидел под виндой
[23:17:49] <valexey> у-у...
[23:17:59] <kemiisto> 30-минут чёта ставил,сносил
[23:18:01] <kemiisto> ковырял
[23:18:04] <kemiisto> ну нахуй
[23:18:09] <kemiisto> загрузил федорку
[23:18:16] <kemiisto> ps2pdf уже есть
[23:18:19] <kemiisto> терминал
[23:18:21] <kemiisto> 1 команда
[23:18:26] <kemiisto> БЛЕАТЬ!
[23:18:27] <kemiisto> :)
[23:22:44] <valexey> та в федоре можно было и сразу смотреть :-)