
Leonid
10.01.2018
09:36:01
Правда не на скоростном участке, так что на производительность срать
Ошибочки из апишечки

A64m
10.01.2018
09:36:46
не понял, зачем для этого анонимные суммы

Leonid
10.01.2018
09:36:51
-XDuplicateConstructorNames же нету

Google

Leonid
10.01.2018
09:37:02
потому что бойлерплейт
А хочется что-бы документация генерилась и было написано что вот такое можно поймать.
Правда мне уже кажется что проще руками доки писать

A64m
10.01.2018
11:18:35
что лучше?
a)
(i + 1) <- foo
b)
i' <- foo
let i = i' - 1
c)
i <- fmap pred foo
d)
i <- (-1) <$> foo

Aleksey
10.01.2018
11:19:15
d

kana
10.01.2018
11:19:16
дык a) же депрекейтед

A64m
10.01.2018
11:19:33
нет

kana
10.01.2018
11:19:36
ну я тоже d) использую, хоть хотел бы a), только чтобы он нормально был реализован (что я представить не могу, кроме S k <- foo)

A64m
10.01.2018
11:21:15
а что не нравится в том, как реализован a?

kana
10.01.2018
11:22:54
в основном в том, что + там - нифига не оператор Num же, использовать какие (n * 2) <- foo мы уже не сможем, это какое-то adhoc решение

A64m
10.01.2018
11:24:57
ну это как конс для списка
над списком полно всяких операций задано, но матчить можно только конс

Pig
10.01.2018
11:27:02
a) лучше

kana
10.01.2018
11:27:08
матчить можно по конструктору же, + же конструктором не является, в то время как :: вполне себе
опять же, (S k) - норм, то есть дело чисто в нейминге

Google

A64m
10.01.2018
11:28:14
ну если бы являлся, то и n+k паттерны как отдельная фича не нужны были бы, но фича к тому и сводится, что как-бы является

Pig
10.01.2018
11:28:31
Это же с integer работает? Т. е. вполне можно получить отрицательный i?

A64m
10.01.2018
11:28:51

Dmitry
10.01.2018
11:29:10
e) (pred -> i) <- foo

A64m
10.01.2018
11:29:24
во всех остальных случаях тоже можно, там ниже гард который это проверяет
о, я смотрю ghcjs для 8.2 сделали

Anton
10.01.2018
12:11:51
где его тестить можно?
в nixpkgs уже попал?

A64m
10.01.2018
12:14:17
не знаю, вижу пока только ветку в репе

Alexander
10.01.2018
13:08:26
а в haskell же были какие-то опции для lto?
чтобы ненужные символы из зависимостей поубивать когда компилится
-split-sections?

A64m
10.01.2018
13:14:52
он разве не включен по умолчанию везде (кроме виндовс, конечно)

Alexander
10.01.2018
13:16:25
угу включен

Leonid
10.01.2018
13:24:27
--gc-sections вроде можно передать

Kirill
10.01.2018
13:59:41
@A64m_qb0 ветке уже сто лет в обед - https://github.com/ghcjs/ghcjs/issues/602

A64m
10.01.2018
14:04:42

Kirill
10.01.2018
14:05:50
и то правда

A64m
10.01.2018
14:05:56
https://github.com/ghcjs/ghcjs/commits/ghc-8.2

Google

Николай
10.01.2018
17:31:39
Подскажите, термин bottom (type) в отечественной computer science действительно переводится как "дно"?

kana
10.01.2018
17:32:43
некоторые переводят его как жопа

GNU/Maybe
10.01.2018
17:33:42
_|_
Довольно таки жопа

Николай
10.01.2018
17:34:43
Ну а если цензурно? )

GNU/Maybe
10.01.2018
17:35:29
Ну почему бы и не дно

Ignat
10.01.2018
17:37:23
почему бы и не _|_ или bottom

kana
10.01.2018
17:39:07
боттом

Denis
10.01.2018
17:39:34
ну можно еще как-то типа "неразрешимость/парадокс"

Imants
10.01.2018
18:39:59
А почему бы не "вакуум"?

Евгений
10.01.2018
18:42:33
Переводят как боттом

Hot
10.01.2018
18:54:24
Добрый вечер!
Так какой всё же наиболее распространённый подход в Haskell при работе с SQL-базами? (В моём случае SQLite3) Какие библиотеки чаще всего используют, может быть, ORM или ещё какие-нибудь приблуды?

kana
10.01.2018
18:56:17
persistent (+ esqueleto, если нужны сложные запросы)

Sergey
10.01.2018
18:57:26
1. persistent
2. persistent + esqueleto
3. opaleye
4. opaleye + girella

Alexander
10.01.2018
18:57:49
выкинуть нафиг фреймворки если нужны сложные запросы

Kirill
10.01.2018
18:58:02
ещё beam вроде сикелайт умеет

Alexander
10.01.2018
18:58:09
хотя тавм sqlite какие к черту сложные запросы

Hot
10.01.2018
19:02:31
Ок, спасибо )
Блин, за persistent вообще лайк от души. Прямо то, что я искал в том виде, в каком мне надо.

Denis
11.01.2018
02:09:42

Google

Yuriy
11.01.2018
05:40:05

Евгений
11.01.2018
07:32:50

Admin
ERROR: S client not available

Index
11.01.2018
08:29:18
Надо б библиотеку с автогенерированным AST PostgreSQL, без семантики

Denis
11.01.2018
11:16:16
так что lesser evil

Leonid
11.01.2018
11:31:28
вьюхи и хранимки же. все сложности переносятся поближе к данным.

Kirill
11.01.2018
11:53:36
и поглубже динамический сикель запихивается
в смысле динамической типизации

Index
11.01.2018
11:59:02
> вьюхи и хранимки же
Ага, всё приложение в хранимке написать

Ignat
11.01.2018
12:08:08
Ну к постгресу можно вроде плагины писать, чтобы поддерживались произвольные языки для хранимок
По-моему, и для хачкеля что-то такое есть

Yuriy
11.01.2018
12:08:22

Leonid
11.01.2018
12:27:12
хранимки только для data integrity же

Alexander
11.01.2018
13:11:11
class RestrictTime xs where
restrict :: TimeUnit -> Maybe (Unit xs)
тогда это с type application испольщуется как:
foo (restrict @ ['Day,'Week] -> Just x) = ..
?
или я опять туплю
тупой ghc теперь компиляет годами :/

Yuriy
11.01.2018
13:30:15
после собачки пробел не нужен

ParkeT
11.01.2018
13:43:09

Google

Anton
11.01.2018
13:44:01

Alexander
11.01.2018
13:45:01
не, мне конкретно тот кусок интересен был

Anton
11.01.2018
13:45:02
наделают новых кодогенераторов и отбрехиваются от оптимизации

Alexander
11.01.2018
13:45:10
там неясно, чего так тупить

Anton
11.01.2018
13:45:29
мб специализаций генерил

A64m
11.01.2018
13:45:59
ghc всегда что-то делал

Anton
11.01.2018
13:46:18
но теперь делает больше, чем делал до
судя по скорости

A64m
11.01.2018
13:47:22
это-то да

Kirill
11.01.2018
13:48:07
ну с фиксом https://ghc.haskell.org/trac/ghc/ticket/14338 возможно хоть чуток умерит свой был
иногда