Towards language-parametric semantic editor services based on declarative type system specifications