amarao: (Default)
amarao ([personal profile] amarao) wrote2025-05-22 08:45 am

Л - не логика, а lua

> nan
nil
> a=0/0
> a
-nan
> a==nill
false
> a==nan
false
> a==-nan
stdin:1: attempt to perform arithmetic on a nil value (global 'nan')
stack traceback:
    stdin:1: in main chunk
    [C]: in ?

После присматривания к результатам... в целом, претензия только к выводу nan как nil.

juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-05-22 12:45 pm (UTC)(link)
И здесь тоже язык создавали люди, не знакомые с логикой.

[personal profile] anonim_legion 2025-05-22 02:59 pm (UTC)(link)
- Мыкола, знаешь як паскали наш NULL называют?
- Як?
- nil!
- Поубивал бы!
juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-05-23 12:09 pm (UTC)(link)
А почему это? Мы через NAN моделируем Option[Double], так? И почему None != None? Чтобы сломать свойства эквивалентности того, что мы объявили как равенство?
juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-05-23 05:28 pm (UTC)(link)
За этим стоит какая-нибудь теория, или это чисто художественная. интерпретация пожеланий инженеров?
juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-05-24 02:26 pm (UTC)(link)
Ну так мы уже в категории Клайсли для монады Option. Either
[Error: Irreparable invalid markup ('<f64,poisoned>') in entry. Owner must fix manually. Raw contents below.]

Ну так мы уже в категории Клайсли для монады Option. Either<f64,poisoned> - это всё равно, что Option<f64>.
juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-05-26 02:15 pm (UTC)(link)
В чём проблема? Отменить тотальное равенство для Maybe? Отменить-то можно, а смысл?

someResult match
  case None => println("no result")
  case Some(result) => println(s"Success: $result")


Работать не будет. Вообще интуиционистской логики не построить. Там равенство определяется как классификатор диагонали. Так что нельзя будет определять, например, подобъекты.

В принцпе, NaN нахер не нужен при вычислениях - это сигнал, что результата нет, т.к. функция частичная. Ну, например, кольцо целых чисел не является полем. Ну и чо? На хрена?

juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-05-26 02:49 pm (UTC)(link)
Я это понимаю как накручивание псевдонауки вокруг неудобного факта, что математики там нет, а есть фантазии прагматиков.
juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-05-27 03:14 pm (UTC)(link)
Я не пытаюсь ничего построить. Но к этим floats было бы неплохо не ad-hoc, а нормальную математику обеспечить.
juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-05-31 08:01 pm (UTC)(link)
Она формализована? Ассоциативность операций сложения и умножения, например, имеется хотя бы? Если нет, то какой смысл что-то вычислять из, например, аэродинамики?
yurikhan: (Default)

[personal profile] yurikhan 2025-06-02 09:27 am (UTC)(link)

В плавучей арифметике сложение и умножение в общем случае не ассоциативно и без всяких NaN’ов, чисто за счёт ограниченной битности мантиссы. Примерно в духе (2^N + 1) + 1 = 2^N + 1 = 2^N, но 2^N + (1 + 1) = 2^N + 2.

juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-06-02 12:35 pm (UTC)(link)
Да, есть такая проблема; для борьбы с этим есть всякие трюки в вычислительной математики.

Короче да, это не математика, а ближе к химии.
juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-06-02 06:44 pm (UTC)(link)
Я в вычислительной математике не силён.