Hi Curtis,
It seems this has been broken ever since I introduced it. I actually had code that used it, but never noticed that also didn't work. How embarrassing.
The intent was for the arguments to be a plain list, not a list of lists, so there was a :by #'cddr missing from the loop. I've pushed a fix. if you change your code like this, it should work:
(setf foo (postmodern:with-column-writers (:id #'(lambda (inst val) (setf (foo-id inst) val) (setf (foo-stuff inst) (format nil "My Value: ~A" val)))) (postmodern:get-dao 'foo 1)))
Let me know if you have any more problems.
Best, Marijn