private IEnumerable <Token> GetTokenStream(string str)
 {
     return
         (from strToken in str.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries).AsEnumerable()
          let t = Token.Parse(strToken)
                  where t != null
                  select t);
 }