nl_tokens: ( a - > b ) - > RoseTree a - > RoseTree b
pl_tokens: function fmap ( f , tree ) { return new RoseTree ( f ( tree . <mask> ) , function ( ) { return tree . children ( ) . map ( fmap . bind ( null , f ) ) ; } ) ; }