Kennt jemand eine Funktion, die nur eine bestimmte Menge an Zeit, um eine Funktion auszuführen. Etwas mit einer Typensignatur wie diesem.Haskell Zeitlimit zur Bewertung
limited::Int->(a->b)->a->IO (Maybe b)
Ich kann nicht vorstellen, wie zu implementieren, und ich konnte es nicht finden. Der Grund, warum ich frage, ist, ich werde eine Liste aller möglichen Brainfuck Programme machen, und ich möchte diejenigen herausfiltern, die zu lange dauern.
Ich hatte keine Ahnung, dass existierte. –
'begrenzt t f x = Timeout t (return $ f x!)' –
Noch besser wäre es: 'Timeout t $ auswerten (fx)' ('evaluate' definiert in' Control.Exception') –