I'm heading to bed, but came across something I can't quite wrap my head around. The first snippet works. The second one doesn't. I'm sure I'll figure it out after some sleep.. Just thought I'd put it here in case it's something you'd be interested in.
:match "read letter" {
: if (is_present("visit_letter") ) { :print "this works";
} }
:match "read letter" { : if (is_present("visit_letter") && noun1_is "visit_letter" == true) { :print "this doesn't"; } }