Simon, there is an easy way for both a shallow copy and a deep copy in Snap!. Let me show you, and please don't let over-eager @18001767679 irritate you, because ... well. Anyway.
To make a shallow copy:
A "shallow copy" means that you'll get a new list structure, but what's inside that result only gets referenced, not duplicated. So, if you shallow-copy a table (a list of rows), you'll get a new table, but each row will be the same as the corresponding one of the source table.
and to make a deep copy:
This might be unintuitive at first sight, but it's kinda crazy cool once you see what's happening here, namely that the ID
function is a hyperblock.
I'll leave it at this for you to savor.
Beautiful and elegant, ain't it?
(I've edited this post because at first it showed the wrong pic for deep-copy)