Home
Objective Caml
ocaml@conference.jabber.ru
Четверг, 31 мая 2012< ^ >
f[x] установил(а) тему: OCaml / ОКамл / Камль -- http://caml.inria.fr | Камло - http://camlunity.ru/ | Верблюды грязи не боятся! | release crap, enjoy NIH | репортьте баги официальным дилерам | ocaml мёртв и тормозит, move on | stdlib only? - ССЗБ | Fight FUD with fire | Мойте руки перед чатом
Конфигурация комнаты
Участники комнаты

GMT+4
[00:04:41] <bobry> какой то сомнительный у ocsigen в целом подход
[00:04:56] <bobry> я правильно понимаю что то шо скомпиляется надо запускать *внутрях* этого ocsigenserver?
[00:05:13] <Kakadu> типа того
[00:05:38] <bobry> и почему нельзя было просто дать API для запуска сервера из своего "приложения"
[00:05:44] <bobry> эдакий application server получается
[00:05:49] <bobry> насмотрелись на жавы блин
[00:07:01] <gds> bobry: как себе это представляешь?
[00:07:31] <bobry> gds: что именно?
[00:07:44] <gds> запуск сервера из своего приложения
[00:08:15] <bobry> ну если твое приложение это функция из request -> response то все просто :)
[00:08:30] <bobry> стриминг правда при таком подходе не получится
[00:09:14] <bobry> можно правда заложить его возможность в response, а ля [`EOF | `Chunk ...]
[00:10:02] <gds> хватит мне тут изобретать итераты публично в чятике1111
[00:10:14] <bobry> :(
[00:10:22] <bobry> да пофик что внутрях, вот честно
[00:10:46] <bobry> но кстати эта "функция" вполне могла бы быть кондуитом
[00:11:11] <bobry> тобишь чем то, что стоит посередине ввода и вывода :)
[00:12:14] <gds> это да.
впрочем, предполагаю, у ocsigen какие-то более глобальные потребности, и именно поэтому оно не даёт апи для запуска себя как сервера.  Может от ошибок предостеречь чтобы.
[00:12:42] <bobry> возможно-возможно, жаль что в случае камло выбирать не приходится
[00:12:49] <bobry> хочешь вебню, бери eliom + ocsigen
[00:13:15] <Kakadu> какие придирчивые
[00:13:33] <bobry> Kakadu: ну а чо, сколько можно терпеть11
[00:28:34] Kakadu вышел(а) из комнаты
[00:37:14] Vinzent вышел(а) из комнаты
[00:38:35] Vinzent вошёл(а) в комнату
[01:11:10] Vinzent вышел(а) из комнаты
[01:11:35] Vinzent вошёл(а) в комнату
[01:26:48] Vinzent вышел(а) из комнаты
[01:27:53] Sun][ вышел(а) из комнаты
[02:17:01] bobry вышел(а) из комнаты
[03:16:20] Typhon вышел(а) из комнаты
[03:59:47] letrec вошёл(а) в комнату
[05:00:47] tilarids вышел(а) из комнаты: Machine going to sleep
[05:05:33] letrec вышел(а) из комнаты
[05:29:44] tilarids вошёл(а) в комнату
[05:35:55] tilarids вышел(а) из комнаты: Machine going to sleep
[06:25:05] gds вышел(а) из комнаты
[08:40:32] ftrvxmtrx вошёл(а) в комнату
[09:33:29] dzhon вошёл(а) в комнату
[10:15:55] dzhon вышел(а) из комнаты
[10:16:23] dzhon вошёл(а) в комнату
[10:22:43] ermine вошёл(а) в комнату
[10:42:07] Sun][ вошёл(а) в комнату
[10:43:22] bobry вошёл(а) в комнату
[11:00:38] bobry вышел(а) из комнаты
[11:12:59] ftrvxmtrx вышел(а) из комнаты
[11:15:40] ftrvxmtrx вошёл(а) в комнату
[11:35:56] Kakadu вошёл(а) в комнату
[12:03:25] tilarids вошёл(а) в комнату
[12:12:42] bobry вошёл(а) в комнату
[12:42:10] bobry вышел(а) из комнаты
[13:12:45] <Kakadu> слушайте, а как lwt реализует многопоточность? чтонить а-ля fork()?
[13:19:35] dzhon вышел(а) из комнаты
[13:19:37] dzhon вошёл(а) в комнату
[13:43:42] <Kakadu> klapaucius: помнишь ты говорил что у функциональных языков проблемы с SMP, хотя должно быть наоброт?
[13:44:57] gds вошёл(а) в комнату
[13:47:52] Typhon вошёл(а) в комнату
[13:56:04] <ftrvxmtrx> Kakadu: lwt -- cooperative multithreading с возможностью перевода specific thread'а в отдельный системный
[13:56:27] <Kakadu> мне уже объяснили что это не настоящее SMP
[14:03:04] tilarids вышел(а) из комнаты: Machine going to sleep
[14:12:55] <klapaucius> Kakadu: ну да, говорил. а что?
[14:13:14] <Kakadu> klapaucius: вопрос: почему так?
[14:15:14] <f[x]> единственно непонятно почему должно быть наоборот
[14:17:44] <klapaucius> Потому, что ФЯ реализуют, обычно, всякие вузы и лаборатории, а рантайм у которого все хорошо с многопоточностью с разделяемой памятью требует больших вложений труда. Основная сложность разработки рантайма в том, что управлять разделяемой памятью сложно и дорого - разработка хорошего ГЦ для такого случая - настоящий рокет сайенс. При этом ФЯ выделяют зиллионы мелких блоков памяти и производительность ГЦ для них критична.
[14:19:13] dzhon вышел(а) из комнаты
[14:23:36] <klapaucius> f[x]: я не говорил, что должнобыть наоборот. Я говорил, что имеет широкое хождение миф, что должно быть наоборот.
[14:24:16] klapaucius вышел(а) из комнаты: I'm happy Miranda IM user. Get it at http://miranda-im.org/.
[14:24:18] klapaucius вошёл(а) в комнату
[14:24:33] <f[x]> ок
[14:25:02] <Kakadu> т.е. если бы был супер мусорщик, то  наступил мы коммунизм?
[14:25:08] <Kakadu> бы*
[14:27:26] <klapaucius> Не надо супер мусорщик. достаточно чтоб была хотя-бы одна ВМ, у которой был бы благоприятствующий сценариям выделения памяти в ФЯ приличный сборщик - и ситуация значительно улучшилась бы. JVM и .NET к таким не относятся.
[14:29:35] <Kakadu> т.е. надо не просто запилить мусорщик уровня JVM, но и адаптировать его под функциональщину?
[14:30:04] <klapaucius> Ну да.
[14:30:45] <Kakadu> а кто-нибудь написал папиру, как именно его стоит адаптировать?
[14:31:26] <ftrvxmtrx> вы так говорите, как будто обязательно нужен _функциональный_ язык
[14:31:40] <f[x]> Kakadu: можешь взять себе такую халтурку на лето, всё равно три месяца делать нечего
[14:31:48] <Kakadu> f[x]: я вот и думаю
[14:31:57] <f[x]> ftrvxmtrx: ессно, и статически типизированный
[14:32:10] <f[x]> и с годным мета-уровнем
[14:32:26] <klapaucius> ftrvxmtrx: а зачем нужен еще один дисфункциональный язык?
[14:32:26] <ftrvxmtrx> грусть тоска печаль уныние
[14:32:41] <ftrvxmtrx> не знаю зачем
[14:32:45] <ftrvxmtrx> мне go нравится
[14:33:11] <ftrvxmtrx> и erlang. хотя в erlang shared memory нету, естественно
[14:33:14] <f[x]> ну статически типизированный си без сборщика мусора и с поддержкой smp - тоже ок - только это посложнее видимо будет :)
[14:33:36] <Kakadu> ftrvxmtrx: у erlang какая-то система типов стрёмная
[14:33:49] <ftrvxmtrx> у него её нету ты хочешь сказать
[14:34:09] <Kakadu> ftrvxmtrx: да вроде есть, но его надо прикручивать
[14:34:27] <klapaucius> Никак не могу понять, что в го хорошего. Если бы не гугл - над ним только потешались бы. Предыдущий "го" Роба Пайка лимбо/инфорно вообще никто не заметил.
[14:34:30] <ftrvxmtrx> вот go вполне себе строг с типами, есть smp и сборщик мусора
[14:34:39] <ftrvxmtrx> и функции в нём и channels -- first class
[14:35:05] <ftrvxmtrx> а что в go плохого?
[14:35:10] <klapaucius> там каналы синхронные.
[14:35:42] <klapaucius> т.е. вся та же головная боль с дедлоками что и в вы_назовите_это.
[14:36:58] <klapaucius> Еще из плохого - примитивная система типов, уродливый синтаксис, безумная семантика. Т.е. обычнай опус нечитателя с синдромом Уолта Брайта в терминальной стадии.
[14:37:55] <ftrvxmtrx> интересное мнение
[14:39:36] <ftrvxmtrx> а каналы в go не обязательно синхронные
[14:40:00] dki001 вошёл(а) в комнату
[14:40:08] dki001 вышел(а) из комнаты
[14:40:16] <ftrvxmtrx> насчёт синтаксиса опять же -- на вкус и цвет
[14:40:36] <ftrvxmtrx> не совсем понял про систему типов, чем она примитивна
[14:40:42] <Kakadu> блин, заинтриговали свои го
[14:44:32] <Kakadu> что-то type Number *Number выглядит дико
[14:48:07] <ftrvxmtrx> это где ты такое увидел?
[14:50:37] <ftrvxmtrx> хотя какая разница
[14:50:41] <ftrvxmtrx> вполне нормально
[14:53:13] tilarids вошёл(а) в комнату
[14:54:14] tilarids вышел(а) из комнаты
[14:55:54] <klapaucius> В любом языке, систему типов можно с той или иной натяжкой назвать нормальной можно сделать аналог этого:
class Functor f where fmap :: (a -> b) -> f a -> f b; instance Functor [] where fmap = map.
Хотелось бы посмотреть, как такое будет на go выглядеть.
[15:05:01] tilarids вошёл(а) в комнату
[15:05:22] <ftrvxmtrx> страшненько будет выглядеть
[15:07:02] <ftrvxmtrx> можно ещё было на C предложить то же самое с таким же успехом
[15:08:15] <ftrvxmtrx> если говорить о языках вообще, то я не понимаю ненависти ни к одному из них
[15:08:30] <ftrvxmtrx> не нравится -- можно не писать
[15:10:01] <gds> проблема в том, что другие люди таки пишут, им нравится, но мудрасци не хватает проссать то, что этот код со временем превратится в тыкву, и порой будет оказываться, что тебе нужно его поддерживать, модифицировать.  как это было с коболом, как это сейчас уже начинается с плюсцами.
[15:10:40] <ftrvxmtrx> меня это не пугает, я не пишу на таком
[15:12:21] <gds> а кто-то пишет, и, может, в работе, которая всем остальным хороша, придётся поддерживать чужой код, написанный на _таком_.
[15:13:04] <klapaucius> На C это вообще никак не будет выглядеть - там такое невозможно в принципе. Аналогично и в Го.
[15:13:23] <ftrvxmtrx> "такое" имеется в виду "точно такое же"?
[15:13:28] akovbovich вошёл(а) в комнату
[15:15:32] <klapaucius> "Такое" - имеется в виду "аналогичное". С аналогичным уровнем абстракции. С аналогичными гарантиями от системы типов (например о том, что на входе и выходе один тип коллеции а не разные) с аналогичной степенью интрузивности (даже сос скидкой в виде невозможности слелать инстансы-сироты).
[15:16:20] <klapaucius> Даже по по автоматическому поиску словаря сделать скидку можно.
[15:17:03] <ftrvxmtrx> ну ессно нельзя
[15:17:08] <ftrvxmtrx> go вообще не функциональный
[15:17:30] <klapaucius> Это к функциональный/нефункциональный вообще не относится.
[15:18:08] <ftrvxmtrx> а к чему относится?
[15:18:08] <klapaucius> Разговор был о системе типов. Вы спросили чем она примитивная - я ответил.
[15:18:16] <ftrvxmtrx> а, ок
[15:46:43] letrec вошёл(а) в комнату
[15:54:35] Vinzent вошёл(а) в комнату
[15:55:05] dzhon вошёл(а) в комнату
[16:09:22] akovbovich вышел(а) из комнаты
[16:11:13] akovbovich вошёл(а) в комнату
[16:19:51] Vinzent вышел(а) из комнаты
[16:21:02] Vinzent вошёл(а) в комнату
[16:22:05] Vinzent вышел(а) из комнаты
[16:22:15] ftrvxmtrx вышел(а) из комнаты
[16:23:18] ftrvxmtrx вошёл(а) в комнату
[16:27:42] ftrvxmtrx вышел(а) из комнаты
[16:27:50] ftrvxmtrx вошёл(а) в комнату
[16:28:33] Kakadu вышел(а) из комнаты
[16:42:04] ftrvxmtrx вышел(а) из комнаты
[16:42:11] ftrvxmtrx вошёл(а) в комнату
[16:47:48] ftrvxmtrx вышел(а) из комнаты
[16:48:20] ftrvxmtrx вошёл(а) в комнату
[16:50:47] dki001 вошёл(а) в комнату
[16:52:43] dki001 вышел(а) из комнаты
[16:59:13] ftrvxmtrx вышел(а) из комнаты
[16:59:46] ftrvxmtrx вошёл(а) в комнату
[17:01:48] ftrvxmtrx вышел(а) из комнаты
[17:01:55] ftrvxmtrx вошёл(а) в комнату
[17:09:39] ftrvxmtrx вышел(а) из комнаты
[17:09:46] ftrvxmtrx вошёл(а) в комнату
[17:12:00] ftrvxmtrx вышел(а) из комнаты
[17:12:09] ftrvxmtrx вошёл(а) в комнату
[17:25:27] dzhon вышел(а) из комнаты: Replaced by new connection
[17:25:28] dzhon вошёл(а) в комнату
[17:33:47] ftrvxmtrx вышел(а) из комнаты
[17:33:54] ftrvxmtrx вошёл(а) в комнату
[17:44:20] ftrvxmtrx вышел(а) из комнаты
[17:44:30] ftrvxmtrx вошёл(а) в комнату
[17:54:41] Vinzent вошёл(а) в комнату
[17:56:22] <Vinzent> "как это было с коболом, как это сейчас уже начинается с плюсцами." - олололо привет из криокамеры
[17:58:56] Kakadu вошёл(а) в комнату
[18:01:47] ftrvxmtrx вошёл(а) в комнату
[18:02:00] ftrvxmtrx вышел(а) из комнаты
[18:02:08] ftrvxmtrx вошёл(а) в комнату
[18:13:18] ftrvxmtrx вышел(а) из комнаты
[18:13:47] ftrvxmtrx вошёл(а) в комнату
[18:16:13] ftrvxmtrx вышел(а) из комнаты
[18:27:27] ftrvxmtrx вышел(а) из комнаты
[18:27:51] ftrvxmtrx вошёл(а) в комнату
[18:27:56] ftrvxmtrx вошёл(а) в комнату
[18:30:26] ftrvxmtrx вышел(а) из комнаты
[18:31:06] Vinzent вышел(а) из комнаты
[18:31:12] Vinzent вошёл(а) в комнату
[18:53:41] Typhon вышел(а) из комнаты
[19:00:38] dzhon вышел(а) из комнаты
[19:00:48] dzhon вошёл(а) в комнату
[19:03:55] Sun][ вышел(а) из комнаты
[19:33:27] dzhon вышел(а) из комнаты
[19:38:22] akovbovich вышел(а) из комнаты
[19:40:51] f[x] вошёл(а) в комнату
[20:21:34] Vinzent вышел(а) из комнаты
[20:21:42] Vinzent вошёл(а) в комнату
[20:21:50] ftrvxmtrx вышел(а) из комнаты
[20:27:46] akovbovich вошёл(а) в комнату
[20:44:37] tilarids вышел(а) из комнаты: Computer went to sleep
[21:06:42] letrec вышел(а) из комнаты
[21:12:52] tilarids вошёл(а) в комнату
[21:15:26] bobry вошёл(а) в комнату
[21:24:01] f[x] вышел(а) из комнаты
[21:24:19] ftrvxmtrx вошёл(а) в комнату
[21:42:25] f[x] вошёл(а) в комнату
[21:51:22] Sun][ вошёл(а) в комнату
[21:55:12] bobry вышел(а) из комнаты
[21:55:54] bobry вошёл(а) в комнату
[22:09:37] akovbovich вышел(а) из комнаты
[23:51:08] f[x] вышел(а) из комнаты
[23:52:40] f[x] вошёл(а) в комнату
[23:53:52] komar вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!