moved functional module to core: is that basic to scheme programming