list and glist implemented