Git Product home page Git Product logo

incom-data / antlr3 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from antlr/antlr3

0.0 0.0 0.0 15.48 MB

antlr v3 repository (pulled from p4 with history from //depot/code/antlr/antlr3-main

Home Page: http://www.antlr.org

Shell 0.03% JavaScript 1.98% Ruby 6.75% C++ 5.19% Python 13.71% Perl 0.92% C 7.71% ActionScript 2.31% PHP 0.02% Objective-C 16.89% Java 24.57% C# 7.52% Pascal 4.54% GAP 4.51% Makefile 0.06% HTML 3.10% Batchfile 0.01% M4 0.05% Starlark 0.07% Raku 0.07%

antlr3's Introduction

ANTLR v3.5.3
April 9, 2022

Terence Parr
ANTLR project lead and supreme dictator for life
University of San Francisco

INTRODUCTION

Welcome to ANTLR v3!  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. I've
been working on parser generators for 25 years and on this particular
version of ANTLR for 9 years.

You should use v3 in conjunction with ANTLRWorks:

    http://www.antlr3.org/works/

and gUnit (grammar unit testing tool included in distribution):

    http://theantlrguy.atlassian.net/wiki/display/ANTLR3/gUnit+-+Grammar+Unit+Testing

The book will also help you a great deal (printed May 15, 2007); you
can also buy the PDF:

    http://www.pragmaticprogrammer.com/titles/tpantlr/index.html

2nd book, Language Implementation Patterns:

    http://pragprog.com/titles/tpdsl/language-implementation-patterns

See the getting started document:

    http://theantlrguy.atlassian.net/wiki/display/ANTLR3/FAQ+-+Getting+Started

You also have the examples plus the source to guide you.

See the wiki FAQ:

    http://theantlrguy.atlassian.net/wiki/display/ANTLR3/ANTLR+v3+FAQ

and general doc root:

    http://theantlrguy.atlassian.net/wiki/display/ANTLR3/ANTLR+3+Wiki+Home

Please help add/update FAQ entries.

If all else fails, you can buy support or ask the antlr-interest list:

    http://www.antlr.org/support.html

Per the license in LICENSE.txt, this software is not guaranteed to
work and might even destroy all life on this planet:

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

----------------------------------------------------------------------

EXAMPLES

ANTLR v3 sample grammars:

    https://github.com/antlr/examples-v3

Examples from Language Implementation Patterns:

    http://www.pragprog.com/titles/tpdsl/source_code

----------------------------------------------------------------------

What is ANTLR?

ANTLR stands for (AN)other (T)ool for (L)anguage (R)ecognition
and generates LL(*) recursive-descent parsers. ANTLR is a language tool
that provides a framework for constructing recognizers, compilers, and
translators from grammatical descriptions containing actions.
Target language list:

http://theantlrguy.atlassian.net/wiki/display/ANTLR3/Code+Generation+Targets

----------------------------------------------------------------------

How is ANTLR v3 different than ANTLR v2?

See "What is the difference between ANTLR v2 and v3?"

    http://theantlrguy.atlassian.net/wiki/pages/viewpage.action?pageId=2687279

See migration guide:

    http://theantlrguy.atlassian.net/wiki/display/ANTLR3/Migrating+from+ANTLR+2+to+ANTLR+3

----------------------------------------------------------------------

How do I install this damn thing?

You will have grabbed either of these:

    http://www.antlr3.org/download/antlr-3.5.3-complete-no-st3.jar
    http://www.antlr3.org/download/antlr-3.5.3-complete.jar

It has all of the jars you need combined into one. Then you need to
add antlr-3.5.3-complete.jar to your CLASSPATH or add to arg list; e.g., on unix:

$ java -cp "/usr/local/lib/antlr-3.5.3-complete.jar:$CLASSPATH" org.antlr.Tool Test.g

Source + java binaries: Just untar antlr-3.5.3.tar.gz and you'll get:

antlr-3.5.3/BUILD.txt
antlr-3.5.3/antlr3-maven-plugin
antlr-3.5.3/antlrjar.xml
antlr-3.5.3/antlrsources.xml
antlr-3.5.3/gunit
antlr-3.5.3/gunit-maven-plugin
antlr-3.5.3/pom.xml
antlr-3.5/runtime
antlr-3.5.3/tool
antlr-3.5.3/lib

Please see the FAQ

    http://theantlrguy.atlassian.net/wiki/display/ANTLR3/ANTLR+v3+FAQ

-------------------------

How can I contribute to ANTLR v3?

http://theantlrguy.atlassian.net/wiki/pages/viewpage.action?pageId=2687297

antlr3's People

Contributors

sharwell avatar parrt avatar ibre5041 avatar zannick avatar odahoda avatar mike-lischke avatar sanne avatar martint avatar murrayju avatar teverett avatar qmx avatar afester avatar stadlerb avatar edwardaux avatar josephw avatar jcking avatar robstoll avatar vslavik avatar ksgokul avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.