Chciałem napisać wydajną implementację algorytmu najkrótszej ścieżki Floyd-Warshall dla wszystkich par w Haskell za pomocą Vector s, aby uzyskać dobrą wydajność. Implementacja jest dość prosta, ale za
mam wpisać ten kod do interpretera i pamięć jest szybko zużywany: last [1..10^7] `seq`()
Nie mogę zrozumieć, dlaczego to wymaga więcej niż O (1) przestrzeni. Jeśli zrobić właśnie (która powinna być
Czytałem już wiele razy, że leniwa ocena w Haskell może czasami prowadzić do przecieków kosmicznych. Jaki rodzaj kodu może prowadzić do przecieków kosmicznych? Jak je wykryć? I jakie środki ostrożnośc