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)