Size: a a a

2021 March 02

к

кана in Haskell
[BRM]White Rabbit
неа, это не все ветки кода обработаны, обратитесь к статическим анализаторам за лечением
так чем это отличается от того, что в рантайме упадет 1 + "2" ?
источник

ХГ

Хаскелль Моисеевич Г... in Haskell
[BRM]White Rabbit
Не совсем понимаю кейс, в котором это должно быть использовано
У Бартоша недавно была статья про игру Factorio, там очень понятно этот момент...
источник

к

кана in Haskell
тут тоже + просто обрабатывает отдельные значения, а на других падает
источник

[

[BRM]White Rabbit in Haskell
кана
так чем это отличается от того, что в рантайме упадет 1 + "2" ?
тем что это скорее
foo x = if  even x then 5
без else, а не проблема типов
источник

к

кана in Haskell
data Value = I Int | S String

plus :: Value -> Value -> Value
plus (I a) (I b) = I (a + b)
plus (S a) (S b) = S (a <> b)

plus (I 1) (S "2") упадет в рантайме, ровно как и в питоне например, это динамическая типизация?
источник

IR

IC Rainbow in Haskell
IC Rainbow
где на хакадже взять констрейнт, что один тайплевел список есть префикс другого?

upd: https://kseo.github.io/posts/2017-01-16-type-level-functions-using-closed-type-families.html
• Not enough descriptor sets bound
 Remaining descriptors: '[Env.Env]
• In the expression: Pipeline.bind cb (Render.pSkySun fPipelines)

ня.

Но только в месте где оно требуется почему-то ругается на "Redundant constraint".
:: ( dsl :< oldDsl, ...
Но как так? Зачем?...
источник

c

certifiable fleece in Haskell
кана
data Value = I Int | S String

plus :: Value -> Value -> Value
plus (I a) (I b) = I (a + b)
plus (S a) (S b) = S (a <> b)

plus (I 1) (S "2") упадет в рантайме, ровно как и в питоне например, это динамическая типизация?
Питон статически типизирован, но всего с одним типом. И тут ты делаешь такое же
источник

[

[BRM]White Rabbit in Haskell
кана
data Value = I Int | S String

plus :: Value -> Value -> Value
plus (I a) (I b) = I (a + b)
plus (S a) (S b) = S (a <> b)

plus (I 1) (S "2") упадет в рантайме, ровно как и в питоне например, это динамическая типизация?
Неа, пока у тебя типы выводятся в компайле, типизация статическая
источник

0

0xd34df00d in Haskell
А тут я беру идрис 2 и делаю тип Dyna, определённый как (a : Type ** a) (надо только ещё мультиплисити расставить, чтобы на тип можно было паттерн-матчиться в рантайме).
источник

к

кана in Haskell
[BRM]White Rabbit
Неа, пока у тебя типы выводятся в компайле, типизация статическая
нет типов никаких, Value может быть как числом так и строкой
источник

[

[BRM]White Rabbit in Haskell
certifiable fleece
Питон статически типизирован, но всего с одним типом. И тут ты делаешь такое же
питон не статически типизирован, потому что у него нет компайл-тайма, он скриптовый
источник

к

кана in Haskell
боюсь ты не совсем понимаешь про что говоришь просто
источник

к

кана in Haskell
интерпретатору не обязательно выводить какие-то типы в рантайме
источник

к

кана in Haskell
кана
data Value = I Int | S String

plus :: Value -> Value -> Value
plus (I a) (I b) = I (a + b)
plus (S a) (S b) = S (a <> b)

plus (I 1) (S "2") упадет в рантайме, ровно как и в питоне например, это динамическая типизация?
вот тут я определил маленький язык без типов, в нем есть строковые литералы, интовые литералы и plus, никакой статической типизации нет, падает в рантайме при сложении числа и строки
источник

к

кана in Haskell
IC Rainbow
• Not enough descriptor sets bound
 Remaining descriptors: '[Env.Env]
• In the expression: Pipeline.bind cb (Render.pSkySun fPipelines)

ня.

Но только в месте где оно требуется почему-то ругается на "Redundant constraint".
:: ( dsl :< oldDsl, ...
Но как так? Зачем?...
впервые вижу такую ошибку
источник

[

[BRM]White Rabbit in Haskell
кана
вот тут я определил маленький язык без типов, в нем есть строковые литералы, интовые литералы и plus, никакой статической типизации нет, падает в рантайме при сложении числа и строки
хм, метапрограммирование?..
источник

[

[BRM]White Rabbit in Haskell
кстати, я правильно понимаю, на хаскеле можно накатать свой Prelude со своей системой типов и другими возможностями, а после подключить к файлу и фактически получится полноценный язык программирования?
источник

к

кана in Haskell
нет
источник

JS

Jerzy Syrowiecki in Haskell
certifiable fleece
Может лучше обычную ссылку на них оставить? В целом я просто очень отрицательно отношусь ко всем этим скорачивателям
да, возможно
источник

JS

Jerzy Syrowiecki in Haskell
[BRM]White Rabbit
кстати, я правильно понимаю, на хаскеле можно накатать свой Prelude со своей системой типов и другими возможностями, а после подключить к файлу и фактически получится полноценный язык программирования?
систему типов нельзя, а набор типов можно. кроме списка
источник