Hi Harry,
I've pushed a version of the operator where the list given as :values is evaluated and checked at run-time -- I suppose you'll rarely know exactly how many rows you are inserting at compile-time, so doing the length checks and expansion then seems unpractical. Also (for consistency with out operators) removed the parentheses around the :columns list. Your example would now look like this:
(:insert-rows-into 'pg-table :columns 'a 'b 'c :values '((1 2 3) (4 5 6)))
See if this works for you.
Best, Marijn