TODO: split array object memory pool from Object