Size: a a a

2021 February 17

T

The Lord of Hypercom... in Haskell Start
Jerzy Syrowiecki
круглые скобочки обязательны для использования оператора без непосредственного применения
Ща
Ща
То бишь
Если считаем значение a • b, то без скобочек, а если просто упоминаем, то в скобочках, так?
источник

JS

Jerzy Syrowiecki in Haskell Start
The Lord of Hypercomplex Numbers
Ща
Ща
То бишь
Если считаем значение a • b, то без скобочек, а если просто упоминаем, то в скобочках, так?
да
источник

JS

Jerzy Syrowiecki in Haskell Start
a + b + c + d == foldl (+) 0 [a, b, c, d]
здесь функция + в левой части применяется,
а (+) в правой передаётся аргументом в foldl
источник

T

The Lord of Hypercom... in Haskell Start
Красота
источник

JS

Jerzy Syrowiecki in Haskell Start
и промежуточные варианты есть — сечения

(+) == \a b -> a + b
(a +) == \b -> a + b
(+ b) == \a -> a + b
(a + b) == a + b
источник

JS

Jerzy Syrowiecki in Haskell Start
это для любых операторов, кроме (-)
источник

T

The Lord of Hypercom... in Haskell Start
А полезная штука этот ваш foldl
А перегрузка операторов есть? Хотя при наличии (+) глупый вопрос
источник

JS

Jerzy Syrowiecki in Haskell Start
(a -) == \b -> a - b
(- b) == - b == negate b
subtract b == \a -> a - b
источник

JS

Jerzy Syrowiecki in Haskell Start
The Lord of Hypercomplex Numbers
А полезная штука этот ваш foldl
А перегрузка операторов есть? Хотя при наличии (+) глупый вопрос
перегрузки нет, но можно переопределить локально и определить инстанс класса
источник

T

The Lord of Hypercom... in Haskell Start
Падажжити
Класса? Это как в ООП, что ли?
источник

JS

Jerzy Syrowiecki in Haskell Start
The Lord of Hypercomplex Numbers
А полезная штука этот ваш foldl
А перегрузка операторов есть? Хотя при наличии (+) глупый вопрос
с наличием (+) это не связано
источник

JS

Jerzy Syrowiecki in Haskell Start
The Lord of Hypercomplex Numbers
Падажжити
Класса? Это как в ООП, что ли?
нет, с ООП никак связано. просто однофамильцы. просто изучайте дальше Хаскель, это в любом курсе есть и будет понятнее, чем в чате
источник

T

The Lord of Hypercom... in Haskell Start
Jerzy Syrowiecki
нет, с ООП никак связано. просто однофамильцы. просто изучайте дальше Хаскель, это в любом курсе есть и будет понятнее, чем в чате
Ну я вот и читаю
источник

JS

Jerzy Syrowiecki in Haskell Start
вот, например, локальное переопределение (+):

> let a + b = 5 in 2 + 2
5

> 2 + 2
4
источник

JS

Jerzy Syrowiecki in Haskell Start
(хотя в языках с возможностями ФП и ООП их местные аналоги тайпклассов могут быть связаны с ООП)
источник

VS

Vladimir Sentsov in Haskell Start
The Lord of Hypercomplex Numbers
Ну я вот и читаю
Скорее как интерфейсы в Java. Или протоколов в Swift.
источник

JS

Jerzy Syrowiecki in Haskell Start
Vladimir Sentsov
Скорее как интерфейсы в Java. Или протоколов в Swift.
местами похоже, а местами совсем нет
источник

JS

Jerzy Syrowiecki in Haskell Start
относительно близкие аналоги хаскельных тайпклассов — концепты С++, типажи Rust
источник

T

The Lord of Hypercom... in Haskell Start
Vladimir Sentsov
Скорее как интерфейсы в Java. Или протоколов в Swift.
Ни о чем не говорит
источник

T

The Lord of Hypercom... in Haskell Start
Jerzy Syrowiecki
если прямо очень нужно математикам вводить свои формулы в Хаскель, то можно через TemplateHaskell определить свой DSL

myDotProduct x y = [mymath|
 ⟨x,y⟩
|]
Где хорошо почитать про это?
источник