Am I right that srfi-1 take and drop are the same as the core list-head and list-tail? In which case perhaps, * srfi-1.scm (take): Make this an alias for list-head. (drop): Make this an alias for list-tail. * tests/srfi-1.test: New file, exercising take and drop. * Makefile.am (SCM_TESTS): Add it. The only difference I could spot in the current implementations was list-head and list-tail throw an exception for negative n, where take and drop code quietly treat that as 0. srfi-1 doesn't say anything about negatives as far as I can tell, so presumably there's a free choice.