[plt-scheme] Natural Language parsing in CS1
I'm sorry I wasn't as clear as I should have been...
I do NOT want my students to write the parsers or deal with the parse
trees more than understanding what they represent. The challenge for
them would be writing grammars that recognize grammatical sentences,
don't recognize ungrammatical ones, and allow for more than one parse
of ambiguous sentences that capture the ambiguity (e.g., "The mother
of the boy and the girl slept." can mean that one or two people
slept.)
Yes, it's a toy project and doesn't scale well, but it's an
interesting application of a skill that's very similar to but feels
very different from traditional programming. (I guess it's actually
more akin to declarative programming ala ProLog or something similar.)
The tough part is recognizing how small changes in the grammar can
ripple through and cause whole classes of sentences that should be
grammatical to be ungrammatical and vice versa.
So I'd write the parser and such and let the kids just play with the grammars.
Todd