Ich bin es gewohnt, meinen Code mit ghci zu debuggen. Oft, so etwas wie dies geschieht (nicht so offensichtlich, natürlich):Gibt es eine Möglichkeit, den Speicher zu begrenzen, den ghci haben kann?
ghci> let [email protected](_:x) = 0:1:zipWith(+)f x
ghci> length f
Dann passiert nichts für einige Zeit, und wenn ich nicht schnell genug reagieren, hat GHCI vielleicht 2 GB RAM gegessen, was mein System einzufrieren. Wenn es zu spät ist, können Sie das Problem nur lösen, indem Sie [ALT] + [DRUCKEN] + [K] drücken.
Meine Frage: Gibt es eine einfache Möglichkeit, den Speicher zu begrenzen, der von Ghci verbraucht werden kann, sagen wir 1 GB? Wenn das Limit überschritten wird, sollte die Berechnung abgebrochen werden oder ghci sollte getötet werden.
Siehe auch http://stackoverflow.com/questions/5716216/recovering-from-stack-overflow-or-heap-exhaustion-in-a-haskell -Programm –