User:Popcorndude/Recursive Transfer
< User:Popcorndude
Jump to navigation
Jump to search
Revision as of 00:30, 5 March 2019 by Popcorndude (talk | contribs) (Created page with " == Coding Challenge == All my code is on GitHub at https://github.com/mr-martian/GSoC19-recursive So far (as of 3/4/19) I have reimplemented the Python script from the pro...")
Coding Challenge
All my code is on GitHub at https://github.com/mr-martian/GSoC19-recursive
So far (as of 3/4/19) I have reimplemented the Python script from the prototype and added support for attribute categories and parameterized nodes.
Example:
cat = a b c; #lex $cat -> #(x.$cat); node $cat -> lex lex { 2 1 } ;
The defines a category "cat" consisting of <a>, <b>, and <c>. It then defines a terminal node type "lex" which matches things of the form "lemma<x><C>", where C is in cat. The last line defines a non-terminal node "node" which matches two lexs and swaps them. It is parameterized by the cat, as is lex, so the result is that this will match "soup<x><a> sandwich<x><a>" or "blah<x><c> bloop<x><c>" but not "sheep<x><a> shoop<x><c>".