introduce Matcher primitive pattern constructor