Недавно я заметил, что я довольно часто пишу функции, которые просто итерацию другой функции f
, пока она не достигнет фиксированной точки (например, что f x == x
)В Haskell есть оператор с фиксированной точкой?
Я думал, что это довольно общее понятие, так что я думаю, что может быть построен в .
Так что мне было интересно, есть ли встроенный для этого или что-то более общее?
Так что я в основном ищу это:
fixedpoint f x= head . dropWhile(\y->y /= f y) $ iterate f x
Я просто имел проблемы прибегая к помощи этого, потому что я нашел только ссылки на функции fix
всякий раз, когда мой срок поиска содержал fixed point
или что-то подобное.
@vikingsteve Насколько я знаю, это просто дополнение к 'dropWhile', но я не вижу, как это позволяет найти неподвижные точки? – flawr
Хорошо, я из моей глубины здесь. Была просто мысль :) – vikingsteve
Я по-прежнему ценю ваши усилия =) – flawr