Home Articles FAQs XREF Games Software Instant Books BBS About FOLDOC RFCs Feedback Sitemap
irt.Org

space leak

You are here: irt.org | FOLDOC | space leak

A data structure which grows bigger, or lives longer, than might be expected. Such unexpected memory use can cause a program to require more garbage collections or to run out of heap. Space leaks in functional programs usually result from excessive laziness. For example, the Haskell function

	sum []     = 0
	sum (x:xs) = x + sum xs

when applied to a list will build a chain of closures for the additions and only when it reaches the end of the list will it perform the additions and free the storage. Another example is the function

	mean l = sum l / length l

The sum function forces the entire list l to be evaluated and built in the heap. None of it can be garbage collected until the length function has consumed it.

Nearby terms: space-cadet keyboard « space complexity « space key « space leak » SPACEWAR » SPADE » spaghetti code

FOLDOC, Topics, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, ?, ALL

©2018 Martin Webb