Alexander
А там еще на плюсах когда ФП делаешь, сегфолты заработать - раз плюнуть.
Aliester
умные программисты пишут на асемблере
Aliester
одним файлом
Aliester
сразу с манглингом
Алексей
На плюсах заработать сегфолты всегда раз плюнуть
Aliester
и в ногу выстрелить
Aliester
чинно, обьектом с темплейтом и смарт пойнтером
Aragaer
а я люблю писать тесты с мин-юнитом и потом прогонять их через валгринд
Aliester
Alexander
Уверен, в чате плюсовиков так же говорят, когда речь про Haskell заходит
Alexander
О, пойду-ка я поиском поищу "Haskell" в таком чате
Alexander
Ну, там, в общем, языкосрачи ничем не отличаются. Но есть тенденция: всякие чуваки пишущие "искаверкана русска языка", в основном, против Haskell, но целая куча грамотных и рассудительных, которые даже его рекламируют.
Alexander
все логично, программисты на хаскеле привыкли использовать статическую проверку на наличие ошибок
Alexander
даже в орфографии
Anatolii
Aliester
динамический хаскель
A64m
как-то осторожно он признается что "динамическую" "типизацию" любит, зато делать строгий язык в 2010 годы не боится совсем, а что больший признак неадекватности это еще поспорить можно
Andrew
Artem
Anatolii
next Haskell?
Anatolii
это английский аналог нашей фразы "когда рак на горе свистнет"
Anatolii
Когда багу пофиксишь? - Когда выйдет новый строгий хаскель
Danila Matveev
@A64m_qb0 наверняка ты знаешь
подскажи, пожалуйста, откуда взялся термин type class и есть ли его точное определение
Artem
next Haskell?
Собственно, в контексте Идрис это имеет вполне практический смысл
Mikhail
Oleg
Видимо, корректная редукция с наименьшим количеством бета
Aliester
call-by-name го
Евгений
Евгений
Anonymous
Может, упростить контроль над ленивостью?
Например, при вызове ф обозначать, что пусть всё в ней лениво | строго.
Евгений
Зачем вам упрощать контроль за ленивостью? Может лучше писать абстракции, которые не протекают?
Viacheslav
Нормально делай нормально будет
Aliester
Denis
Denis
не уверен что это самый первый пейпер, но это вадлеровская работа и эпоха +- совпадает
Danila Matveev
isnullxbh
Ребят, подскажите, пожалуйста, какой из терминов корректный (общеупотребительный): альфа-эквивалентность или бета-эквивалентность? Кузнецов в своих лекциях использует первый термин, Москвин - второй. Или я что-то не понял, и это разные вещи?
кана
кана
альфа-эквивалентность:
(\x. x) =_\alpha (\y.y)
бета-эквивалентность:
(\x.x) y =_\beta y
(\x.t(x)) y =_\beta t(y)
Viacheslav
Отличное пояснение
isnullxbh
Т.е. альфа-эквивалентность - это что-то вроде простой замены переменной?
Danila Matveev
переименование
кана
...которые в лямбда-абстракции
isnullxbh
Спасибо!
Cheese
Cheese
бета — это подстановка выражения в тело
Danila Matveev
Leonid 🦇
Artem
A64m
да особой не было, было несколько восторженных ожидателей, когда ее только обсуждать начали, а когда имплементировали, никто и не заметил
A64m
Dmitry
Artem
Это связано с тем что Идрис сделали строгим
A64m
нет, не связано
A64m
(по словам его автора, по крайней мере)
Leonid 🦇
И вообще, строгости добавить проще чем ленивости
Oleg
Если не ошибаюсь, строгость обусловлена простотой написания бэкендов во всё подряд
Oleg
А часть функций, которые берёт на себя ленивость берёт тотальность с кодатой
Vitaly
Herbert Valerio Riedel говорит, что следующий за 2.2 cabal будет 3.0 и там по умолчанию уже будет nix-style local build (https://github.com/haskell/cabal/issues/5074#issuecomment-360978451), ссылается при этом на проект для GSoC. Как считаете, это реально?
Alexander
конечно реально
Alexander
в cabal style
Alexander
когда что-то работает, что-то нет, интерфейс для инопланетян
Artem
И вообще, строгости добавить проще чем ленивости
Как раз наоборот. Для строгости нужны новые примитивы (seq), а для создания отложенного вычисления просто завернуть в лямбда-функуию с unit-аргументом. Примерно так + немного сахара в Скале
Alexander
но если понимаешь, что там к чему - то все прекрасно
Alexander
Leonid 🦇
Alexander
получится как в идрисе "ленивость"
Leonid 🦇
Artem
Alexander
покажите мне хоть один язык, в котором есть нормальная ленивость, а там уже и поговорим
Alexander
что проще, а что нет :)
Leonid 🦇
Алексей