add define-match-bind and ~struct