Size: a a a

2021 February 18

DF

Dollar Føølish in Haskell Start
Очень непривычно что лямбда захватывает не сразу
источник

JS

Jerzy Syrowiecki in Haskell Start
Dollar Føølish
Лямбда она ведь в хаскеле тоже лениво конструируется в отличие от пром языков
что такое "пром"? если это "промышленность", то Хаскель в промышленности тоже используется, нельзя отделять
источник

DF

Dollar Føølish in Haskell Start
Да, ну я для краткости
источник

JS

Jerzy Syrowiecki in Haskell Start
хотя на каком-то глубоком уровне, похоже, всё-таки появляется стэк, и он вполне традиционный — в виде куска памяти с указателем на вершину https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/compiler/generated-code
источник

JS

Jerzy Syrowiecki in Haskell Start
Dollar Føølish
Поэтому не может сразу себе захватить
всё захватывается сразу, лень добавляет indirection, цепочки ссылок могут быть длиннее, но разрывов быть не может
источник

JS

Jerzy Syrowiecki in Haskell Start
Dollar Føølish
При конструкции лямбды получается нужен фрейм из которого она будет  захватывать
опять же со стэком вызовов это не связано.

стэк вызовов нужен для возврата управления и значения в предыдущую точку.

а в Хаскеле из-за лени вычисление запускается не в том месте, где написана функция, так что стэк точек возврата может сильно отличаться от стэка с замыканиями
источник

JS

Jerzy Syrowiecki in Haskell Start
@astynax мы далеко от старта ушли?
источник

JS

Jerzy Syrowiecki in Haskell Start
Jerzy Syrowiecki
опять же со стэком вызовов это не связано.

стэк вызовов нужен для возврата управления и значения в предыдущую точку.

а в Хаскеле из-за лени вычисление запускается не в том месте, где написана функция, так что стэк точек возврата может сильно отличаться от стэка с замыканиями
точнее, замыкания вообще не образуют стэк, там граф может быть сколь угодно цикличным
источник

JS

Jerzy Syrowiecki in Haskell Start
а вычисления образованы не лямбдами, а задумками, то есть вообще любыми выражениями
источник

AP

Aleksei (astynax) Pi... in Haskell Start
Jerzy Syrowiecki
@astynax мы далеко от старта ушли?
Пока нормально :)
источник

T

The Lord of Hypercom... in Haskell Start
Почему mod не работает на дробных?
источник

AP

Aleksei (astynax) Pi... in Haskell Start
А что он должен возвращать?
источник

JS

Jerzy Syrowiecki in Haskell Start
The Lord of Hypercomplex Numbers
Почему mod не работает на дробных?
по определению. это целочисленная операция
источник

JS

Jerzy Syrowiecki in Haskell Start
расширение mod на дробные числа тоже есть — mod'
источник

T

The Lord of Hypercom... in Haskell Start
Jerzy Syrowiecki
расширение mod на дробные числа тоже есть — mod'
О, как раз спросить хотел
Спасибо
источник

JS

Jerzy Syrowiecki in Haskell Start
Aleksei (astynax) Pirogov
А что он должен возвращать?
отстаток от откусывания целого числа кусков
источник

AP

Aleksei (astynax) Pi... in Haskell Start
тогда делитель должен быть целым
источник

T

The Lord of Hypercom... in Haskell Start
ghci не понравилась  такая идея
источник

JS

Jerzy Syrowiecki in Haskell Start
> mod' 3 2
1
> mod' 0.3 0.2
9.999999999999998 e- 2
источник

T

The Lord of Hypercom... in Haskell Start
Aleksei (astynax) Pirogov
тогда делитель должен быть целым
нет😐
источник