ANTLR

来自开放百科 - 灰狐
(版本间的差异)
跳转到: 导航, 搜索
(语言)
(语言)
 
第32行: 第32行:
  
 
==语言==
 
==语言==
*[https://github.com/apache/groovy/tree/master/src/antlr Groovy]词法分析、语法分析  [[Groovy]]
+
*[https://github.com/apache/groovy/tree/master/src/antlr Groovy]词法分析、语法分析  [[Groovy]] [https://github.com/apache/groovy/blob/master/src/main/antlr2/org/codehaus/groovy/antlr/groovy.g Main程序]
  
 
==项目==
 
==项目==

2018年5月4日 (五) 07:00的最后版本

Wikipedia-35x35.png 您可以在Wikipedia上了解到此条目的英文信息 ANTLR Thanks, Wikipedia.

ANTLR, ANother Tool for Language Recognition, is a language tool that provides a framework for constructing recognizers, interpreters, compilers, and translators from grammatical descriptions containing actions in a variety of target languages. ANTLR provides excellent support for tree construction, tree walking, translation, error recovery, and error reporting.

目录

[编辑] 简介

[编辑] 功能

[编辑] 指南

[编辑] mac OS

$ cd /usr/local/lib
$ sudo curl -O https://www.antlr.org/download/antlr-4.7.1-complete.jar
$ export CLASSPATH=".:/usr/local/lib/antlr-4.7.1-complete.jar:$CLASSPATH"
$ alias antlr4='java -jar /usr/local/lib/antlr-4.7.1-complete.jar'
$ alias grun='java org.antlr.v4.gui.TestRig'

touch Expr.g4

grammar Expr;		
prog:	(expr NEWLINE)* ;
expr:	expr ('*'|'/') expr
    |	expr ('+'|'-') expr
    |	INT
    |	'(' expr ')'
    ;
NEWLINE : [\r\n]+ ;
INT     : [0-9]+ ;

编译运行

$ antlr4 Expr.g4
$ javac Expr*.java
$ grun Expr prog -gui
100+2*34
^D

[编辑] 语言

[编辑] 项目

[编辑] 图集

[编辑] 链接

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱