Size: a a a

2021 April 12

к

кана in Haskell
у нас было похоже, задачи по плюсам давали на парах по джаве, и наоборот

но с теми задачами там не было существенной разницы конечно
источник

JS

Jerzy Syrowiecki in Haskell
хотя могу представить, что лектор читает про Хаскель, а ДЗ выдаёт семинарист, знающий только лисп
источник

JS

Jerzy Syrowiecki in Haskell
в вебдеве Хаскель как раз больше все всего применяется. но почти только на бэкенде
источник

UT

Unknown T. in Haskell
Интересно, надо будет попробовать какой-нибудь пет проект написать на нем.
источник

JS

Jerzy Syrowiecki in Haskell
если что, задавайте любые вопросы в этом чате, мы всегда рады помочь
источник

JS

Jerzy Syrowiecki in Haskell
да это же вообще не решается простыми способами
источник

JS

Jerzy Syrowiecki in Haskell
только если додумать задание в сторону "динамических" типов
источник

к

кана in Haskell
зато там простое решение на идрисе!

nlist : Nat -> Type -> Type
nlist Z a = a
nlist (S n) a = List (nlist n a)

bubl : (n : Nat) -> a -> nlist n a
bubl Z a = a
bubl (S n) a = [bubl n a]

main : IO ()
main = print (bubl 3 "A") -- [[["A"]]]
источник

UT

Unknown T. in Haskell
А как я могу проверить соответствие переменной типу?
В ghci, например, могу написать 1 :: Int или “str” :: Int, а можно сделать то же самое со своим data MyListItem a = Elem a | MyList [MyListItem a] ?
источник

E

Elijah in Haskell
источник

E

Elijah in Haskell
второй из ответов говорит оень красочно But you should think about your code, this is not very much like Haskell should be, and it probably is not what you want.
источник

JS

Jerzy Syrowiecki in Haskell
конечно, точно так же —
Elem 42 :: MyListItem Int
источник

UT

Unknown T. in Haskell
Я это прочитал перед тем, как писать свой вопрос. Там нет ответа про кастомные типы
источник

E

Elijah in Haskell
я немного недодумал что это именно вопрос в отношении кастомных типов)
источник

JS

Jerzy Syrowiecki in Haskell
в данном случае нет разницы между кастомными типами и встроенными
источник

JS

Jerzy Syrowiecki in Haskell
да почти никогда нет разницы между кастомными типами и встроенными
источник

E

Elijah in Haskell
если только в ghci, то можно заюзать :t для значения кастомного типа и то что он выдаст использовать в ::
источник

UT

Unknown T. in Haskell
Ну да, я примерно так и думал, но я так понимаю в ghci все присваивания работают только в рамках одной строки, поэтому не могу объявить сначала тип, потом затестить
источник

JS

Jerzy Syrowiecki in Haskell
нет там никаких присваиваний
источник

GP

Grigory Petrov in Haskell
Там есть многострочный ввод
источник