syntax analyzer in non-traditional way