I am looking now at @guyemerson’s wrapper-grammar which is a matrix-generated English grammar for 567 modified with emerson lists.
My goal is to consider using this solution for (1) my Russian development grammar, to facilitate extraction of both subject and object; (2) potentially for the whole wh-questions library, permanently changing the matrix core.
I copied the wrapper-grammar from here over to my matrix core, and everything loads etc., and sentences generally parse but it seems like the subject extraction rule doesn’t work yet.
basic-extracted-subj-phrase := basic-extracted-arg-phrase & head-compositional &
[ SYNSEM.LOCAL.CAT.VAL [ SUBJ < >,
SPR < >,
COMPS < > ],
HEAD-DTR.SYNSEM [ LOCAL.CAT [ VAL [ SUBJ < gap &
[ LOCAL #local & local &
[ CONT.HOOK.INDEX ref-ind ] ] >,
COMPS olist ],
MC na ],
NON-LOCAL.SLASH.LIST < #local > ],
C-CONT [ RELS.LIST < >,
HCONS.LIST < >,
ICONS.LIST < > ] ].
I have a version of that in my Russian grammar:
my-extracted-subj-phrase := basic-extracted-arg-phrase & head-compositional &
[ SYNSEM.LOCAL.CAT.VAL [ SUBJ < >,
SPR < > ,
COMPS #comps ],
HEAD-DTR.SYNSEM [ LOCAL.CAT [ VAL [ SUBJ < gap &
[ LOCAL #local & local &
[ CONT.HOOK.INDEX ref-ind ] ] >,
COMPS #comps ],
MC na ],
NON-LOCAL.SLASH.LIST < #local > ],
C-CONT [ RELS.LIST < >,
HCONS.LIST < >,
ICONS.LIST < > ] ].
and trying to apply it to a VP results in some unification errors. Here’s an example, that’s the mother’s NON-LOCAL:
I am not yet accustomed enough with emerson-lists to interpret this effectively so I’d appreciate some help :).
What is this saying? I think it is saying that it can’t unify an empty append-list on the VP daughter with the non-empty append-list on the mother? How do I make it work though?
The rule says the sole element on its SLASH.LIST is its daughter’s LOCAL value. Good so far, in term of types? (I expect there will be some confusion for a little while regarding what’s which type and what should go where, as we transition).