defrecord should return body evaluation result

Closes #861