A theory-driven morphological parser