An/rewrite without stdlib take 1

First variant, with inlined code from list.sub (ie list copying)

PS Wait for second variant and let discuss.