Cache and I/O efficent functional algorithms
abstract models of memory management .