@haskellru

Страница 1308 из 1551
Pineapple
26.06.2018
15:56:15
many1 оно называлось в парсеке

Aleksey
26.06.2018
16:00:44
На чём нынче принято писать классический веб с формочками? Есод не предлагать
На всём, кроме Йесода, придётся эти самые формочки делать самому

Leonid
26.06.2018
16:01:07
да это не сложно

Aleksey
26.06.2018
16:01:12
Ну может snap какой формы тоже умеет.

Google
Aleksey
26.06.2018
16:01:22
да это не сложно
Пока форм мало - несложно

Leonid
26.06.2018
16:01:34
ну не на реакте же мне фронт делать

Aleksey
26.06.2018
16:01:40
digestive-functor глянь для форм

ну не на реакте же мне фронт делать
тут соль в кол-ве автоматизаций. Формы в Йесоде сделаны хорошо (это одна из немногих хороший фичей)

Leonid
26.06.2018
16:02:47
ну digestive я использовал

Yuuri
26.06.2018
16:03:22
На чём нынче принято писать классический веб с формочками? Есод не предлагать
Тем же вопросом задавался недавно, так и не определился

Aleksey
26.06.2018
16:04:21
В Yesod сносный hamlet, довольно приятный роутер, формочки опять же удобно сделаны - чик-чик и готовая обустрапленая форма с валидацией и прочим. Толко главное - не делать проект по шаблону :)

Alex
26.06.2018
16:04:24
defines_ <- defines strInRow "protected:" Есть вот такая кострукция defines :: Parser [String] defines = many define Как сделать чтобы когда define фейлил, сразу вызывался strInRow "protected:" ( это тоже парсер)

помогите пожалуйста

Aleksey
26.06.2018
16:05:12
try?

Alex
26.06.2018
16:06:21
Действительно

Блин

Я его не туда написал в прошлый раз

Google
Alex
26.06.2018
16:06:35
Видимо уже устал

Спасибо большое

Yuuri
26.06.2018
16:07:26
> Толко главное - не делать проект по шаблону :) А что с ними?

Andrei
26.06.2018
16:13:48
Alex
26.06.2018
16:22:09
Джентельмены, есть вот такая штука: data Msg = Msg String String [String] [String] [Fields_t] Есть какой-то способ подробне указать, что значит каждый параметр там? Я видел что то типа data A { String::name } можно плиз линк, как так делать, я не могу найти

Alex
26.06.2018
16:24:13
Спасибо:)

Yuuri
26.06.2018
16:25:08
https://ghc.haskell.org/trac/ghc/wiki/Records
Ссылка для новичка будет misleading, имхо

http://learnyouahaskell.com/making-our-own-types-and-typeclasses#record-syntax

Piu
26.06.2018
16:27:03
http://learnyouahaskell.com/making-our-own-types-and-typeclasses#record-syntax
да согласен с learnyouahaskell проще

Mikhail
26.06.2018
16:51:04
Привет, братцы! Кто знает почему удалили сундучок мыслей darkus-а ?

Andrei
26.06.2018
16:59:00
что-то знакомое, емнип бложек про околофп

Alexander
26.06.2018
17:01:01
Романа Душкин вел блог в ЖЖ с таким названием

Andrei
26.06.2018
17:01:29
oh

Alexander
26.06.2018
17:01:56
можно его на Facebook или в твиттере спросить он там активен

@bravit111 может ты знаешь?

Google
Alex
26.06.2018
17:04:59
Спасибо большое всем, кто сегодня принимал участие в процессе написания моего парсера!

Вы очень здорово помогли

Denis
26.06.2018
17:07:25
и где конечный результат?)

Ilya
26.06.2018
17:11:52
а как в Хаскеле теоремы про type level функции доказывать?

Alexander
26.06.2018
17:12:13
unsafeCoerce

Denis
26.06.2018
17:12:24
:D

Ilya
26.06.2018
17:12:35
вот есть type family RecTy (l :: Symbol) (lts :: [k1]) :: k where RecTy l (l := t ': lts) = t RecTy q (l := t ': lts) = RecTy q lts

Alexander
26.06.2018
17:12:47
все что примитивными TF не покажется не сработает

Ilya
26.06.2018
17:13:09
и type family DB' (schema :: [(Symbol, [*])]) where DB' '[] = '[] DB' ('(l, r) ': fs) = l := [Rec r] ': DB' fs

хочу из RecTy t schema r уметь получать RecTy t (DB' schema) [Rec r]

вроде кажется просто...

unsafeCoerce как-то не очень... но для прототипа сойдет, наверное

Alexander
26.06.2018
17:15:42
не понимаю, RecTy это функция, получить из результат применения функции результат другой функции?

Ilya
26.06.2018
17:16:24
да, я написал, как будто это констрейнт, сорри

хочу RecTy t schema ~ RecTy t (DB' schema), конечно

Denis
26.06.2018
17:17:37
хочу RecTy t schema ~ RecTy t (DB' schema), конечно
тут хватит доказать что schema ~ DB' schema? или нет

Ilya
26.06.2018
17:18:15
так они не равны, зачем бы иначе огород городить?

schema -- это список пар (Symbol, Row), а DB' schema -- это список пар (Symbol, [Rec r])

Denis
26.06.2018
17:21:30
Row ~ [Rec r]? насколько я помню то рекорд изоморфен списку пар вроде

тайплевел списку

Google
Ilya
26.06.2018
17:22:16
это да

но DB' берет Row и возвращает тип списка рекордов с этим Row

ok, тут unsafeCoerce помог, а как мне констрейнты коерсить?

как бы мне постулировать RecSize schema ~ RecSize (DB' schema)?

Denis
26.06.2018
17:27:29
как бы мне постулировать RecSize schema ~ RecSize (DB' schema)?
не знаю, мб как-то заюзать https://www.stackage.org/haddock/lts-11.15/constraints-0.10/Data-Constraint.html#t:Dict

но я не знаю точно

Vitaly
26.06.2018
17:29:34
Ilya
26.06.2018
17:29:34
хм. Как-то я им пользовался, там вылезают ошибки типа, которые без Эдварда не понятно, как фиксить ? попробую еще раз

Denis
26.06.2018
17:32:30
хм. Как-то я им пользовался, там вылезают ошибки типа, которые без Эдварда не понятно, как фиксить ? попробую еще раз
у него есть пару постов http://comonad.com/reader/2011/what-constraints-entail-part-1/ http://comonad.com/reader/2011/what-constraints-entail-part-2/

Ilya
26.06.2018
17:33:29
да он и отвечает на #haskell, на это вся и надежда ?

Admin
ERROR: S client not available

Alexander
26.06.2018
17:56:28
или TF a b возвращающую Refl a b

а не класс типов, да, то ещё удовольствие в Haskell

Alex
26.06.2018
18:10:26
Получился обычный парсер. Вечером оказалось, что конечный вид меседжей еще не утвержден, так что сам конструктор я пока писать не буду:)

и где конечный результат?)

Или вам интересен сам код?

Yuuri
26.06.2018
18:16:12
Да, можем поревьюить :)

Ilya
26.06.2018
18:44:02
меня продолжает кусать та же ошибка с переименованием:

recSizeOfDB :: forall schema. RecSize (DB' schema) :~: RecSize schema

Google
Ilya
26.06.2018
18:44:56
• Couldn't match type ‘RecSize (DB' schema0)’ with ‘RecSize (DB' schema)’ Expected type: RecSize (DB' schema) :~: RecSize schema Actual type: RecSize (DB' schema0) :~: RecSize schema0

Alexander
26.06.2018
18:45:29
ScopedTypeVariables + forall schema?

Ilya
26.06.2018
18:45:46
и дальше про то, что RecSize is a type function, and may not be injective

Alexander
26.06.2018
18:45:54
ну

Ilya
26.06.2018
18:46:08
но я это знаю, я как раз хочу теорему, что есть равенство ?

ScopedTypeVariables включил

Alexander
26.06.2018
18:46:29
и schema в forall?

Ilya
26.06.2018
18:46:33
forall есть

Alexander
26.06.2018
18:46:36
а можно гист?

у меня наконец-то телеграм на компе есть

Ilya
26.06.2018
18:47:57
можно github: https://github.com/yanok/queLam/blob/master/src/QueLam/R.hs

Alexander
26.06.2018
18:50:36
src/QueLam/Core.hs:44:17: error: Not in scope: type constructor or class ‘RecVecIdxPos’ | 44 | , KnownNat (RecVecIdxPos l sortedFlds)

Ilya
26.06.2018
18:51:45
Да, там надо патченый superrecord

Стеком должно собираться сорри ?

Alexander
26.06.2018
18:54:53
у меня new-build-ом нормально

так как теперь заставить его сломаться?

чтобы увидеть проблему

@ilya_yanok ^

Ilya
26.06.2018
18:58:35
Хм

блин, сорри, я не закомитил

хм, нет, вроде закомитил

@qnikst у тебя QueLam/R.hs собирается?

Alexander
26.06.2018
19:02:28
7a22bb269b2ce5bf3615a19b77ba5301354a61a1 <- ?

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