Size: a a a

2020 March 25

G

Gymmasssorla in rust_offtopic
red75prime
Из алгоритмически нетривиального: что вот эта реализация конечного автомата, соответствует вот этой схеме состояний, переходов и действий.
В "Type-driven development in Idris" описано несколько раз как делать конечные автоматы с состояними в типах
источник

G

Gymmasssorla in rust_offtopic
На Rust тоже можно, кстати, при определённых обстоятельствах
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
таплы и тип-суммы в школе? такого я точно не слышал
Тип сумма - это тип, инстанс которого содержит инстанс одного из перечисленных в его объявлении типов. Аналог union в Сях. Ну, и где тут "математика"?
источник

r

red75prime in rust_offtopic
Gymmasssorla
На Rust тоже можно, кстати, при определённых обстоятельствах
Да, я так и делал. Неверные состояния должны быть непредставимы и всё такое
источник

Т8

Т-34 85 in rust_offtopic
Gymmasssorla
Кортежи
Необобщённые массивы. Они же нетипизированные массивы. Можно ещё сказать, что это структура с полями и без методов
источник

Т8

Т-34 85 in rust_offtopic
red75prime
Основная сложность - внимательно перенести спецификацию в формальное описание. Так что идрис тут мало поможет.
+
источник

G

Gymmasssorla in rust_offtopic
red75prime
Основная сложность - внимательно перенести спецификацию в формальное описание. Так что идрис тут мало поможет.
Нужно смотреть с чем мы сравниваем. Доказательства в типах нужно сравнивать с тестами. Что лучше "тестирует"? Конечно доказательства, доказательство с полным покрытием во всех смыслах в отношении того, что оно доказывает
источник

AZ

Alex Zhukovsky in rust_offtopic
Т-34 85
Тип сумма - это тип, инстанс которого содержит инстанс одного из перечисленных в его объявлении типов. Аналог union в Сях. Ну, и где тут "математика"?
ну например то что юнион с войд типом эквивалентнен самому типу
источник

r

red75prime in rust_offtopic
Это только один случай. Бывают и другие
источник

AZ

Alex Zhukovsky in rust_offtopic
формула a + 0 = a
источник

G

Gymmasssorla in rust_offtopic
Т-34 85
Необобщённые массивы. Они же нетипизированные массивы. Можно ещё сказать, что это структура с полями и без методов
А ещё можно сказать, что это кортеж и не ебать мозг
источник

AZ

Alex Zhukovsky in rust_offtopic
в типах Result<T, !> === T
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
формула a + 0 = a
Не понял, можно пример в коде?
источник

Т8

Т-34 85 in rust_offtopic
Gymmasssorla
А ещё можно сказать, что это кортеж и не ебать мозг
Это когда ты знаешь, что такое кортеж. А когда не знаешь, тогда нужно это как-то описать.


"Монада - это моноид в категории эндофункторов"
источник

G

Gymmasssorla in rust_offtopic
Т-34 85
Это когда ты знаешь, что такое кортеж. А когда не знаешь, тогда нужно это как-то описать.


"Монада - это моноид в категории эндофункторов"
Почитай что такое кортеж, в чём проблема?
источник

p

polunin.ai in rust_offtopic
Т-34 85
Что такое "таплы"? Это тюплы? То есть, необобщённые массивы?
(i32, f64, String)
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
в типах Result<T, !> === T
Опшионал есть же
источник

G

Gymmasssorla in rust_offtopic
Т-34 85
Опшионал есть же
Option<T> = Result<T, ()> = T + 1
источник

Т8

Т-34 85 in rust_offtopic
Gymmasssorla
Почитай что такое кортеж, в чём проблема?
Но ведь то, что я описал - проще, не так ли?
источник

G

Gymmasssorla in rust_offtopic
Т-34 85
Но ведь то, что я описал - проще, не так ли?
Я не знаю о чём мы спорим
источник