Вы также можете использовать монаду ленивого писателя для обхода, генерируя список улучшающих ответов.Теперь вы несколько упростили свою задачу, просто взяв первый «достаточно хороший» или «лучший на данный момент» результат из списка по некоторым критериям.Кроме того, вы можете использовать трюк timeout
, который описал Дон, или любой другой подход, который вы считаете целесообразным ...