@haskellru

Страница 195 из 1551
Nikita
19.02.2017
19:33:20
и как взаимосвязанно

Kit
19.02.2017
19:33:57
кажется мы отклонились от темы чата

Nikita
19.02.2017
19:35:06
а какие книги, курсы посоветуете для изучения хаскел?

http://haskellbook.com

Google
Alex
19.02.2017
19:35:32
Nikita
19.02.2017
19:35:35
я это читаю сейчас

Alex
19.02.2017
19:36:35
хаскельбук еще

? animufag ?
19.02.2017
19:43:16
что скажете про хаскельбук? кстати не думаю что вы тратили 60$ :)

Тёма
19.02.2017
19:44:46
Мне нравится. Читаю сейчас. Особенно интересны "follow up resources" в конце каждой из глав.

Ilya
19.02.2017
19:44:47
Или какой-то другой

Тёма
19.02.2017
19:44:54
haskellbook.com поди

? animufag ?
19.02.2017
19:44:58
http://haskellbook.com

Тёма
19.02.2017
19:46:29
У меня вот это вызвало озарение, помнится. http://www.haskellforall.com/2014/10/how-to-desugar-haskell-code.html#type-classes

А я не покупал

Google
Тёма
19.02.2017
19:47:00
Дочитаю –– скажу точно, но пока стоит определенно.

? animufag ?
19.02.2017
19:48:13
ну так то на самом деле думаю 60$ здесь оценка труда авторов, нежели ценность для потребителей.

как там с заданиями

Quet
19.02.2017
19:48:46
а ценность для потребителей как в деньгах посчитать? )

? animufag ?
19.02.2017
19:49:47
ну сколько человек готов отдать.

Тёма
19.02.2017
19:49:52
Количественно много, качественно –– пока не могу сказать, потому что 1200 страниц ещё не осилил.

Quet
19.02.2017
19:50:19
ну сколько человек готов отдать.
так это ж индивидуально у каждого )

Serghei
19.02.2017
19:51:14
Dmitry
19.02.2017
19:51:49
вот крутая книга: http://dev.stephendiehl.com/fun/

жалко что пока не до конца написанная

Serghei
19.02.2017
19:52:11
только мне интересно стало вот, а в Haskell сушествует возможность лямбде вызвать самой себя рекурсивно или это я щас маразм спросил

? animufag ?
19.02.2017
19:52:30
лень в общем рассуждать. ну в общем они загнули с ценой для технической литературы, но и разхайпили тоже так неплохо. мб это со стороны рф только кажется, что много, а на американском рынке они и правда в самый раз выжимают

Quet
19.02.2017
19:52:44
вот крутая книга: http://dev.stephendiehl.com/fun/
интересно он ее ещё дописывает или забил

Dmitry
19.02.2017
19:52:57
последние коммиты в октябре

Serghei
19.02.2017
19:52:58
до комбинаторов я еще не дошел

Dmitry
19.02.2017
19:53:09
но и то что есть, довольно круто

Quet
19.02.2017
19:53:15
не совсем забил

Тёма
19.02.2017
19:58:34
до комбинаторов я еще не дошел
https://rosettacode.org/wiki/Y_combinator#Haskell Вот так это делают, если интересно. Я попробовал накидать наивную реализацию и понял, что не всё так просто. :)

Ilya
19.02.2017
20:00:30
Y комбинатор
Или это не ответ на исходный вопрос, или я чего-то не знаю про fix

Google
Ilya
19.02.2017
20:03:35
Как я понял вопрос: В клаузах мы можем писать nat = 1 : map (+1) nat Как эквивалент такой конструкции для лямбда функций? То есть как сослаться в теле лямбда-функции на неё саму?

Я думаю, что ответ "никак", так как лямбда-функция анонимна, но могу ошибаться

Kit
19.02.2017
20:05:53
а разве в haskell не все функции лямбды?

? animufag ?
19.02.2017
20:12:30
Я думаю, что ответ "никак", так как лямбда-функция анонимна, но могу ошибаться
Y combinator таки умеет это делать. Но в типизированном языке это сложнее

примеры приводят на лиспе или джс. Ну или на нотации черча скорее

Тёма
19.02.2017
20:22:03
Как я понял вопрос: В клаузах мы можем писать nat = 1 : map (+1) nat Как эквивалент такой конструкции для лямбда функций? То есть как сослаться в теле лямбда-функции на неё саму?
import Control.Monad.Fix fix $ \nat -> 1 : map (+1) nat Да, из лямбды нельзя сослаться на саму себя, но можно иметь комбинатор, который передаст нас самих как параметр нам же. :)

Проблема в рекурсивном определении типов.

Мой покорёженный лиспом мозг страдает

Serghei
19.02.2017
20:30:16
а есть в хаскеле встроеные средства для получения уникальных членов списка? предположим однотипных например [[1,1,1,1],[1,1,2],[1,1,2],[1,1,2],[2,2]] => [[1,1,1,1],[1,1,2],[2,2]] что-то гуглю гуглю, все не то

не хочу писать функцию

Dmitry
19.02.2017
20:30:50
nub ?

? animufag ?
19.02.2017
20:31:03
Нужен бот для hoogle)

Dmitry
19.02.2017
20:31:14
Set.toList . Set.fromList ?

Serghei
19.02.2017
20:31:31
o!

nub

спс

Dmitry
19.02.2017
20:31:43
nub что-то типа квадратичный, но сохраняет порядок

Kit
19.02.2017
20:32:15
Нужен бот для hoogle)
Это вообще чумовая тема

? animufag ?
19.02.2017
20:32:44
Есть такой но не работает опять

Google
? animufag ?
19.02.2017
20:33:43
Сейчас снова вылезет @goodmind и включит

andretshurotshka?❄️кде
19.02.2017
20:34:38
?

Ilya
19.02.2017
20:35:38
Set.toList . Set.fromList ?
а это за n log n?

Dmitry
19.02.2017
20:35:56
как-то так.

Kit
19.02.2017
20:55:11
мой вариант map head . group . sort
Сработает только если список состоит из типов класса Ord

Ilya
19.02.2017
20:55:57
ну как и это

Set.toList . Set.fromList ?

а nub шире, ему достаточно Eq, но он квадратичный

Dmitry
19.02.2017
20:57:20
как вы пишите на х-ле без контейнеров?

Ilya
19.02.2017
20:57:33
В Haskell нельзя в список запихнуть разные типы
а читал про экзистенциальные типы? полиморфные контейнеры, что-то такое

Kit
19.02.2017
20:57:39
а nub шире, ему достаточно Eq, но он квадратичный
Да, для уникальности нужен Eq, без него никуда в задаче.

Dmitry
19.02.2017
20:57:56
@newrlan можно

Kit
19.02.2017
20:58:05
@newrlan можно
Это те экзистенциальные типы?

Dmitry
19.02.2017
20:59:07
https://wiki.haskell.org/Heterogenous_collections

да например

но не уверен, что это единственный способ, есть еще всякое кунфу на типах, тут есть умельцы

Google
Ilya
19.02.2017
21:00:25
А с этим я вообще не знаком :)
ну по названию функций должно быть очевидно, по-моему =) Set это множество, оно по определению из уникальных элементов состоит

Kit
19.02.2017
21:00:43
При беглом просмотре это чит с созданием общего типа.

Dmitry
19.02.2017
21:02:13
экзистенциальные типы нет

ну и вообще - что значит "чит"

если тайпчек проходит, значит ок

Kit
19.02.2017
21:03:14
Ну тип то все равно один у всех элементов списка

После тайпчека

И здесь уж точно сложно будет ввести Ord

Dmitry
19.02.2017
21:04:25
ну прочитайте уже про экзистенциальные типы

там все написано. и про Ord и про прочее.

Ilya
19.02.2017
21:06:21
а, пропустил слово "однотипных"

понял:)

Насчёт телеграм-бота Может лучше портировать GHC (или какой-нибудь другой компилятор, полегче) под android и iOS? Чтобы всегда иметь под рукой полноценный REPL. В Google Play ничего нет, только убогий клиент для http://tryhaskell.org/ Это сложно сделать?

Я вижу много преимуществ такого решения по сравнению с ботом, и ни одного недостатка

А на компе всё равно у всех есть ghc

Dmitry
19.02.2017
21:12:12
"другой компилятор" это hugs что ли? оно еще живо? давно никто не упоминал этого слова

Ilya
19.02.2017
21:12:31
ну я слышал, что их много:) но работал только с ghc

Страница 195 из 1551