Just a follow up question on this. How do people feel about (fn ... ) not having implicit progn? That sounds extreme, I know, but it would open the door for pattern matching in the very core of Arc.
(fn (x y)
(prs "two args:" x y)
((x . xs))
(prs "a cons cell:" x xs)
args
(prs "many, many args:" args))