I introduced a new NON-LOCAL feature called YNQ for second position question clitics (per LING567 analysis).
I then realized that I didn’t properly add it everywhere, like there is the zero-arg-que type which allows a non-empty QUE, and then there is zero-arg-nonque which insists on an empty QUE, etc. In my current version, YNQ is often underspecified because I did not integrate it into the lex-item hierarchy. So I did integrate it now like so (please scroll down):
; basic_zero_arg lexical items have empty ARG-ST lists. They may
; introduce a non-empty value for one of the non-local features.
basic-zero-arg := lex-item &
[ ARG-ST < > ].
zero-arg-nonslash := basic-zero-arg &
[ SYNSEM.NON-LOCAL.SLASH.LIST < > ].
zero-arg-nonrel := basic-zero-arg &
[ SYNSEM.NON-LOCAL.REL.LIST < > ].
zero-arg-nonque := basic-zero-arg &
[ SYNSEM.NON-LOCAL.QUE.LIST < > ].
zero-arg-nonynq := basic-zero-arg &
[ SYNSEM.NON-LOCAL.YNQ.LIST < > ].
; Non-argument taking items which introduce no non-local values.
norm-zero-arg := zero-arg-nonslash & zero-arg-nonrel & zero-arg-nonque & zero-arg-nonynq.
; Items introducing a rel value.
zero-arg-rel := zero-arg-nonslash & zero-arg-nonque & zero-arg-nonynq.
; Items introducing a que value.
zero-arg-que := zero-arg-nonslash & zero-arg-nonrel & zero-arg-nonynq.
; Items introducing a slash value, e.g., resumptive pronouns in French.
zero-arg-slash := zero-arg-nonrel & zero-arg-nonque & zero-arg-nonynq.
; Items introducing a ynq value, e.g., second position question clitics.
zero-arg-ynq := zero-arg-nonrel & zero-arg-nonque & zero-arg-nonslash.
Then I said that second position question clitics are actually zero-arg-ynq:
; Second position question particles are treated as modifiers.
ques-clitic-lex := no-hcons-lex-item & zero-arg-ynq &
[ SYNSEM [ LOCAL [ CAT [ VAL [ SPR < >,
COMPS < >,
SUBJ < >,
SPEC < > ],
HEAD adv &
[ MOD < [ LIGHT +,
LOCAL intersective-mod &
[ CAT.HEAD +nvrpd ],
L-PERIPH +,
L-QUE - ] > ] ],
CONT.RELS.LIST < > ],
NON-LOCAL [ SLASH.LIST < >,
REL.LIST < >,
QUE.LIST < >,
YNQ.LIST < *top* > ] ] ].
And now the grammar does not compile saying there is a unification failure between YNQ.LIST cons and null, so, something is saying YNQ.LIST is empty.
But what? I meant zero-arg-ynq to say it can be non-empty, modeling it off of the rest of the hierarchy.
What am I missing?