Size: a a a

2020 July 26

A

Andrey in Haskell
дофаминовый впрыск всегда происходит в такие моменты
источник

IK

Ilya Kos in Haskell
есть какой-то трюк, которым я могу _заставить_ пользователя функции явно указывать тип функции, даже если он выводится и без того?
источник

MK

Maxim Koltsov in Haskell
Какой функции?
источник

MK

Maxim Koltsov in Haskell
Где указывать?
источник

MK

Maxim Koltsov in Haskell
Посмотри на пост tripping up type inference в блоге kcsongor, мб ты об этом
источник

IK

Ilya Kos in Haskell
по занванию похоже на то что я хочу, спасибо
источник

JS

Jerzy Syrowiecki in Haskell
Ilya Kos
есть какой-то трюк, которым я могу _заставить_ пользователя функции явно указывать тип функции, даже если он выводится и без того?
попробуй поиграть с [Allow]AmbiguousTypes.

но зачем?
источник

YS

Yan Shkurinskiy in Haskell
Похожим вроде занимался Александр Вершилов для своей либы для хаскуэля
источник

KV

Kirill Valyavin in Haskell
источник

MK

Maxim Koltsov in Haskell
Что такое QTT?
источник

KV

Kirill Valyavin in Haskell
Maxim Koltsov
Что такое QTT?
Quantitative Type Theory, то что сейчас в Idris
источник

MK

Maxim Koltsov in Haskell
Спасибо
источник

MK

Maxim Koltsov in Haskell
Мило конечно, haskell's current linear type system
источник

AA

A64m AL256m qn<co... in Haskell
в идрисе и линейные типы происходят из бернарди и др. 2018 емнип
источник

DB

Danil Berestov in Haskell
А объясните суть линейных типов? Зачем они?
источник

MK

Maxim Koltsov in Haskell
Чтобы статью опубликовать
источник

MK

Maxim Koltsov in Haskell
Или диссер написать
источник

χλ

χоρоший ☽☽☽ λисuчко... in Haskell
Danil Berestov
А объясните суть линейных типов? Зачем они?
Явное указание количества использований ресурса
источник

AA

A64m AL256m qn<co... in Haskell
Danil Berestov
А объясните суть линейных типов? Зачем они?
в пейпере бернарди и др. 2018 написано же
источник

AA

A64m AL256m qn<co... in Haskell
сообщение от чекера, конечно, потрясающее

lol :: [[a]] -> Maybe a
lol (reverse -> (reverse -> x:_):_) = Just x
lol (reverse -> (reverse -> [] ):_) = Nothing
lol (reverse -> []) = Nothing

{-
Hask.hs:16:1: warning: [-Wincomplete-patterns]
   Pattern match(es) are non-exhaustive
   In an equation for `lol':
       Patterns not matched:
           []
           (_:_)
  |
16 | lol (reverse -> (reverse -> x:_):_) = Just x
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
-}
источник