Что такое датчик состояния?
В документации Clojure Core для версии 1.7 - следующие функции
dedupe
disj!
dissoc!
filter
keep
map
random-sample
remove
replace
take-while
Имейте следующий текст в их описании API
Returns a transducer when no collection is provided.
И следующие функции
drop
keep-indexed
partition-all
partition-by
take
take-nth
Имейте следующий текст.
Returns a *stateful* transducer when no collection is provided.
Кроме того - была эта критика этой формулировки.
Мой вопрос: что такое датчик состояния? то есть то, что похоже на сгруппированные функции. (и это причина, по которой люди говорят, что для ввода преобразователя потребуются зависимые типы?)
1 ответ
Решение
Состояние может храниться внутри преобразователей. Соответствующие слайды:
https://github.com/matthiasn/talk-transcripts/blob/master/Hickey_Rich/Transducers/00.34.26.jpg https://github.com/matthiasn/talk-transcripts/blob/master/Hickey_Rich/Transducers/00.36.36.jpg
См. Подробное описание преобразователей - https://www.youtube.com/watch?v=6mTbuzafcII