Yuyuan KANG created IOTDB-190:
---------------------------------

             Summary: switch to ANTLR v4
                 Key: IOTDB-190
                 URL: https://issues.apache.org/jira/browse/IOTDB-190
             Project: Apache IoTDB
          Issue Type: Improvement
            Reporter: Yuyuan KANG


Currently, the system uses ANTLR v3 for query parsing. However, ANTLR v4 has 
some advantages over ANTLR v3.
 # ANTLRv4 uses visitor and listener mechanism,which allows the grammer 
definition independent from programming language (e.g. Java). So it is much 
easier to maintain. 
 # In Antlr v3, developers explicitly defines the structure of the tree to 
build using operator '->'. However, Antlr v4 hides the tree structure from 
developers, which simplifies grammer definition and increases the code 
readability.
 # ANTLR v3’s LL(*) parsing strategy is weaker than v4’s ALL(*), so v3 sometimes
 relied on backtracking to properly parse input phrases.
 # ANTLR v3 cannot handle left-recursive rules, while ANTLR v4 can now handle 
direct left recursion. Therefore, ANTLR v4 can handle more grammer rules.
 # ANTLR v4 works faster than ANTLR v3.

So it is necessary to switch to ANTLR v4



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to