Open KerenR3 opened 10 months ago
Thank you for documenting this, @KerenR3 ! @curtosis --- anything jump out at you that we should keep in mind while fixing this?
@emilymbender @KerenR3 Nothing in particular to watch out for, I don't think, and those choices files look correct to me.
On a brief delve, it looks like that is indeed a bug: obj-prom-op
and subj-dem-op
shouldn't be using the added argnum. I don't see anything obvious in the history that would have broken it, though; it could very well be a schrödingbug.
The only other thing that I can think of that's really changed is the change over to append-lists (commit 25e4fa0?). Nothing there looks like it should matter, but the details of picking out which argument goes where are a bit finicky, and so there may be a stray append or constraint that rolled under the metaphorical couch.
Thank you, @curtosis -- those are helpful breadcrumbs!
The rules generated for the subj-demoting and obj-promoting operations seem to be assuming the wrong number of arguments when the input for these operations is transitive.
When the input to these operations is transitive, the rules assume three arguments:
This seems to be the result of the fact that within the valence change library when both obj-prom and subj-dem rules are added to language.tdl, they are called along with the argnum and numargs parameters:
These parameters in turn come from the following function within the library, which sets the numargs to 3 if transitive and to 2 otherwise:
This results in passive constructions (for the attached choices file) not being parsed. Additionally, when the input to both the larger position class and the valence changing operation is transitive it leads to compilation errors:
pass-trans-choices.txt
jpn-pass-does-not-compile.txt