@haskellru

Страница 257 из 1551
Alexander
28.04.2017
08:36:18
ну в скале нету когеретных классов типов

ладно, если полный код есть я могу подумать, если кто другой не напишет как надо до этого

Denis
28.04.2017
08:44:44
Да это так, развлечения дла мозга. А что есть в хаскелл, для построения кластерных систем? Например раскидать поведения по нескольким нодам которые друг про друга знают и умеют роутит сообщения к нужной, где есть некий стейт для выполнения операций?

Dmitry
28.04.2017
08:45:15
cloud haskell ?

Google
Alexander
28.04.2017
08:45:40
да

Denis
28.04.2017
08:46:36
http://haskell-distributed.github.io/documentation.html#concurrency-and-distribution

Dmitry
28.04.2017
08:46:40
а почему мы его не используем, что бы ноды снюхивать? вместо серванта?

Denis
28.04.2017
08:46:44
звучит как то что надо

Alexander
28.04.2017
08:50:20
не знаю

@notxcain если что его меинтейнеры в этом чятике в том числе

@voidlizard он большой зверь очень в некоторых случаях проще архитектуру можно построить

мы может зопилим более адекватное решение позже, но это ребята в другом отделе делают, и я пока не очень впечатлен тем что там происходит, хотя хорошие идеи есть

Misha
28.04.2017
20:06:53
но суть та же класс для поиска 1 и класс для постиска списка
попробовал, брат жив, но пока Всё Плохо: getIdx :: IdxLookup ixs i v => GenStore ixs k v -> Key i -> GenIdx i v и мне понятно, сообщают, что ixs :: [*], из-за определения GenStore. И я как-то туплю и не могу найти куда мне в эту сигнутуру вписать ixs :: [*]

так, пора гист завести видимо

Alexander
28.04.2017
20:07:49
не понимаю вопроса :(

Misha
28.04.2017
20:09:44
да, очень путано

https://gist.github.com/lolepezy/272ee5d708319f040673e150a7ccea60

Google
Misha
28.04.2017
20:09:47
вот

getIdx не тайпчекается, потому что нужен констрейнт, что ixs :: [*]

и я чотопэ

то есть там возможно много остального неправильного тоже, но там я потом разберусь

Alexander
28.04.2017
20:11:38
я через час где-то посмотрю, ок?

Misha
28.04.2017
20:11:48
без проблем, конечно

Artem
28.04.2017
20:45:17
https://gist.github.com/lolepezy/272ee5d708319f040673e150a7ccea60
эта штука не компилируется из-за неизвестных имён Store, Idx и подобных. Это баг или фича?

Misha
28.04.2017
21:20:29
это фича, там скорее всего еще куча зависимстей

будет длинно

Artem
28.04.2017
21:45:29
попробовал, брат жив, но пока Всё Плохо: getIdx :: IdxLookup ixs i v => GenStore ixs k v -> Key i -> GenIdx i v и мне понятно, сообщают, что ixs :: [*], из-за определения GenStore. И я как-то туплю и не могу найти куда мне в эту сигнутуру вписать ixs :: [*]
конфликтуют использования ixs в GenStore и в IdxLookup: в первом ixs имеет кайнд [*], а во втором ixs используется как тип параметра функции, потому он должен быть каинда *. Последнее ограничение явно сообщит комилятор если явно попросить его в IdxLookup сделать каинд [*] для ixs (class IdxLookup (ixs :: [*])).

Alexander
28.04.2017
21:53:33
угу там proxy ivs, написатт

Alexander
29.04.2017
14:37:58
поменяй ivs там на Proxy ivs

Pavel
30.04.2017
16:52:39
Всем доброго времени суток. Есть ли тут emacs-соводы? Не подскажите ли какой набор плагинов на сегодня лучше всего юзать для разработки haskell?

Kirill
30.04.2017
16:56:57
Spacemacs+haskell-layer удобен. Все сразу из коробки работает.

Pavel
30.04.2017
16:57:57
У меня просто emacs - я так понял layer - это сборка пакетов? слой такой?

ща гляну из чего оно состоит

Evgeniy
30.04.2017
16:58:31
http://spacemacs.org/layers/+lang/haskell/README.html

Aldar
30.04.2017
16:58:31
Kirill
30.04.2017
16:58:45
Да. И в этом его плюс. Что ничего не нужно самому конфигурировать.

Google
Pavel
30.04.2017
17:00:09
я пробовал spaceemacs - както монстровато.. обратно на emacs со своими настройками переполз. Ну дело вкуса. Настроить самому наоборот в кайф

Evgeniy
30.04.2017
17:00:23
тут сам слой описан, можно глянуть что за пакеты https://github.com/syl20bnr/spacemacs/tree/master/layers/%2Blang/haskell

Pavel
30.04.2017
17:01:29
ну во общем я так понял в этом слое самое актуальное и рабочее на сегоднешний день. Благодарю! Попробую разобраться

а менеджер проектов какой используется. Ну чтобы создать проект. Произвести его тестирвоание и сборку?

Это cabal - я правильно понял?

Alexander
30.04.2017
19:57:20
щас многие любят стеком пользоваться

небезосновательно

Misha
30.04.2017
21:31:55
поменяй ivs там на Proxy ivs
Хм. Где там? Мне же нужен не только тип, но и сам Indexes, чтобы значение достать их него

Alexander
30.04.2017
21:32:14
indexes у тебя не *

он не может существовать на value level

Misha
30.04.2017
21:32:51
ага!

Alexander
30.04.2017
21:33:19
https://gist.github.com/lolepezy/272ee5d708319f040673e150a7ccea60#file-kv-hs-L47 эта строка

как proxy - ты передать можешь

Misha
30.04.2017
21:38:22
окей, это ясно. Но как тогда доставать что-то из конкретного value?

примерно понял куда копать

Alexander
30.04.2017
21:54:03
смотря тчо за value

Misha
30.04.2017
22:12:39
обновил до чего-то компилирующегося

теперь правда он жалуется на overlapping instances при попытке вызвать getIdx

сделал ему -XOverlappingInstances и оно даже нормально работает теперь

спасибо! @qnikst

Google
Pavel
01.05.2017
04:57:42
А elm сильно на haskell похож? насколько зрелый проект?

http://elm-lang.org/

просто интересует какой бы я зык на фронте юзать, чтобы на haskell похож был.

Dmitry
01.05.2017
05:24:46
ghcjs

purescript

если "что бы похож"

elm менее похож, чем перечисленное.

Тёма
01.05.2017
07:02:02
А elm сильно на haskell похож? насколько зрелый проект?
Elm ужасно не похож. Но если хочешь разобраться с синтаксисом, то это самое лучшее. Ключевые отличия (как по мне) 1. Strict evaluation 2. Система типов. У elm-а все намного проще и примитивнее. После Хаскеля будет не хватать многих фич типа тайпклассов, экзистенциальных типов и тп. 3. Ну и если говорить про синтаксис, то самое знаменитое (привет всем!) это сигнатуры типов (:: vs :). Так же elm взял некоторые плюшки из f# вроде (|>) и (<|). 4. Elm позиционирует себя как язык, который не выбрасывает исключения в рантайме. В эту сторону идёт ещё работа. В частности, неправильно сформированные регулярки на данный момент могут кинуть страшный джсный эксепшн. Это плохо. Касательно х-ля. Ну есть у нас partial functions. В целом, если хочешь просто что-либо выучить, то elm не будет потерей времени и поможет тебе в последующем изучении х-ля, как по мне. Ну и да, он продакшн ready.

Pavel
01.05.2017
08:19:42
ghcjs
Да вот привык уже на клиенте clojurescript а на сервере clojure юзать. Тут тоже так хочу. В общем нравится то что всетаки попытки есть и их много. Пока что больше приглянулся ghcjs

Под клиент кода даже больше писать приходится чем для сервера. Поэтому этот вопрос лично для меня архи важен

Elm ужасно не похож. Но если хочешь разобраться с синтаксисом, то это самое лучшее. Ключевые отличия (как по мне) 1. Strict evaluation 2. Система типов. У elm-а все намного проще и примитивнее. После Хаскеля будет не хватать многих фич типа тайпклассов, экзистенциальных типов и тп. 3. Ну и если говорить про синтаксис, то самое знаменитое (привет всем!) это сигнатуры типов (:: vs :). Так же elm взял некоторые плюшки из f# вроде (|>) и (<|). 4. Elm позиционирует себя как язык, который не выбрасывает исключения в рантайме. В эту сторону идёт ещё работа. В частности, неправильно сформированные регулярки на данный момент могут кинуть страшный джсный эксепшн. Это плохо. Касательно х-ля. Ну есть у нас partial functions. В целом, если хочешь просто что-либо выучить, то elm не будет потерей времени и поможет тебе в последующем изучении х-ля, как по мне. Ну и да, он продакшн ready.
благодарю за хороший обзор. Всетаки тут вопрос стоит не просто выучить а применять еще активно. С таким прицелом.

Warren
01.05.2017
09:10:56
"Elm is basically PureScript with the adult content removed"

Тёма
01.05.2017
10:24:43
ELM = entry level mathematics :)

Мерлин
02.05.2017
09:49:43
https://ruhaskell.org/posts/events/2017/04/06/meetup-2017-spring-videos.html

Alexander
02.05.2017
14:22:00
ненавижу гейзенбаги

Misha
02.05.2017
21:00:15
ненавижу гейзенбаги
в х-ле же их типа не должно быть

Alexander
02.05.2017
21:00:47
но они везде есть

Misha
02.05.2017
21:05:04
ну блин

Stas
03.05.2017
06:54:50
привет! нет ли инструмента, который чекает цепочку редукций простых лямбда термов?

редуцирую на листке, но постоянно ошибаюсь где-то

Google
Dmitry
03.05.2017
06:55:46
на два поста выше - расцениваем как спам?

пожалуй, да.

Konstantin
03.05.2017
07:17:55
@voidlizard это было в несколько групп распихано сразу

Vladimir
03.05.2017
07:26:51
про лямбда-термы? Это какой-то некст-левел спам)

Dmitry
03.05.2017
07:27:24
чем хорош телеграмм — спамеры тут пропадают бесследно

Stas
03.05.2017
08:15:54
я ведь не про ооп спросил

строгие хаскелисты

Dmitry
03.05.2017
08:17:05
ленивые

Yurii
03.05.2017
08:23:14
А пример можно?)

привет! нет ли инструмента, который чекает цепочку редукций простых лямбда термов?

редуцирую на листке, но постоянно ошибаюсь где-то

Stas
03.05.2017
08:26:02
решил. let T = (\fx. f(f x)); in T T T f x

это из Введение в функциональное программирование. John Harrison глава 2, задача 2

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