
Oleg
03.05.2017
09:21:08
в результате количество аппликаций растёт как 2 ^ (2 ^ 2 ^ ... (2 ^ 1))..)

Stas
03.05.2017
09:23:49
спс

Misha
03.05.2017
09:24:38
число Грэма аппликаций :)

Google

Artem
03.05.2017
13:56:24

Pavel
03.05.2017
17:53:26
Товарищи хаскелисты, вопрос немного не в тему, может кто знает есть ли канал емаксеров на телеграм?
https://t.me/emacs_ru
если кому интересно и ктото юзает emacs

Boris
03.05.2017
20:10:47
Читали уже? Как вам?
https://habrahabr.ru/post/327913/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts
У меня вот вопрос - как использовать подобные вещи в реальном мире
положим, мне нужна программа, которая принимает из stdin, например, количество ферзей и размеры доски и должна печатать их координаты
как должны выглядеть функции, которые их вычисляют, какая у них сигнатура
main = do
(number, size) <- readSomeWay
let result = evalSomeWay number size
printSomeWay result
какие типы и как примерно выглядят функции из такого REPL'а?

Dmitry
03.05.2017
20:13:29
чувак пишет задачу про ферзей на типах, разбавляя опус литературщиной?

Boris
03.05.2017
20:14:00
ну как бы, но там все вычисления идут на уровне типов в ADT
там ссылка на подобную вещь на кложуре

Google

Boris
03.05.2017
20:14:44
только слишком много джавы, я только CL знаю

Dmitry
03.05.2017
20:15:04
а на кложе можно что-то сделать на типах?
там есть типы в компайл-тайме? в хаскелевском понимани? мне казалось, что это язык с динамической типизацией

Boris
03.05.2017
20:16:05
сомневаюсь) да и смысла нет, Лисп это не про типы
я так понял, там что-то типа CLOS юзается - собирает классы на лету, где-то с середины уходит в дебри jvm

Alexander
03.05.2017
20:27:41
/me сказав многозначительное да, ушел спать дальше:/

Alexander
04.05.2017
10:37:31
/me

Alexander
04.05.2017
10:38:14
это не irc, не работает тут

Alexandr
04.05.2017
10:38:54
/you

Dmitry
04.05.2017
10:39:33
и это тоже.

Max
04.05.2017
10:41:51
Безобразие.

Даня
04.05.2017
10:46:21
кто-нибудь проходил вторую часть курс Москвина на степике? у кого какие мнения?

Alexander
04.05.2017
10:48:54
да

Oleg
04.05.2017
10:49:59
Да, последняя задача норм

Pavel
04.05.2017
10:54:13
а это ктонибудь решал?
https://wiki.haskell.org/H-99:_Ninety-Nine_Haskell_Problems

Даня
04.05.2017
11:42:19
я что-то подобное решал на ocaml
https://ocaml.org/learn/tutorials/99problems.html

Misha
04.05.2017
11:54:09
а вот кстати, какой прок от решения этих вещей? ну кроме развлечения, конечно. Я решал задачки с project Euler, это как бы занятно само по себе, но после освоения базовых вещей продвинуться в изучении языка не помогает никак

Alexander
04.05.2017
11:59:44
мне помогло найти haskell работу

Google

Alexander
04.05.2017
11:59:59
не смотря на то, что я большую часть эйлера на питоне и maple сделал

Misha
04.05.2017
12:00:02
опа
последнее, что я предположил бы

Alexander
04.05.2017
12:00:13
ну на самом деле с языком познакомился
и потом когда понадобилось доучил, в общем случай
не показательно

Misha
04.05.2017
12:02:07
найти работу через projecteuler - это самое экзотичное наверное

Igorek
04.05.2017
12:06:09

Alexander
04.05.2017
12:13:12
а потом у меня на maple закончилась лицензия и я забил

Donat
04.05.2017
14:28:41
смотрю лекции Bartosz Milewski, думаю, скоро тоже начну заканчивать все предложения словом okay 8)

Igor
04.05.2017
14:32:09

Alexander
04.05.2017
14:32:18
ну лучше okay чем like между каждыми двумя словами :)

Donat
04.05.2017
14:34:20
да я ничего не имею против, просто заразная штука :)

Alexander
04.05.2017
15:12:51
хм.. чета последняя задачка на удивление простая оказалась
:/

Boris
04.05.2017
21:58:59
Ну не сложней задачки про чекпойнты

Alexander
05.05.2017
06:24:18
в чекпоинтах условие дурацкое было

Dmitry
05.05.2017
06:26:37
Ну хз, мне последняя задача мне показалась сложноватой, пришлось в литературе даже покопаться
Но впрочем у меня и нет большого опыта в Haskell.

Alexander
05.05.2017
08:42:01
я делал похожие но более сложные штуки, с обменом сообщением между корутинами, может поэтому просто

Google

Kit
05.05.2017
10:38:39
а что за задачки вы все решаете?
такое бурное обсуждение уже несколько месяцев

Anatolii
05.05.2017
10:39:32
Вторая часть курсов на степмке

Alexander
05.05.2017
13:47:52
есть BroadcastTChan, есть слушатели, которые делают dupTChan и слушают
каким бы наиболее дешёвым способом уметь получать нотификацию, что слушателей нет
заставить слушателя сделать bracket subscribe unsubscribe скорее всего нельзя
с финализаторами связываться тоже не хочется

blkmrkt
05.05.2017
14:28:50
haskell for mac нормальный IDE по сравнению с emacs+аддоны?

Misha
05.05.2017
14:30:35

Alexander
05.05.2017
14:30:52
все завершились
слушателей не осталось
мне очень лень делать каунтер, который не факт что "клиент" сможет меинтейнить
а делать прокси объект с финализатором, как-то тоже печально

Alex
05.05.2017
14:32:35

Alexander
05.05.2017
14:32:38
правда тогда на "клиента" не будут накладываться требования

Misha
05.05.2017
14:36:05
Как-то это безрадостно, да. У меня познания скромные в данном вопросе, но кажется проще предоставить враппер поверх forkIO и заставить его вызывать, чем полагаться на GC (опять же это, вполне возможно плохо применимый, опыт с JVM)
но вообще "фиг знает"

Alexander
05.05.2017
14:37:14
нету форкио

Misha
05.05.2017
14:37:22
и опять же если клиенты могут дальше создавать новые треды, то совсем получается интересно

Alexander
05.05.2017
14:37:31
и прямого отношения рабочий тред подписка

Google

Alexander
05.05.2017
14:37:44
есть н сервисов и рабочий подписан к одному из
много рабочих могут быть подписаны к одному сервису
рабочий процесс написан криво и там не сделать bracket
и.е. исключение может положить все в неконсистентное состояние

Misha
05.05.2017
14:39:13
хм

Alexander
05.05.2017
14:40:21
гарантии даваемые GC покатят в принципе
невызов возможен только при выключении, а эта ситуация обрабатывается