Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time
September 28, 2020 18:56
January 11, 2023 14:30
December 23, 2022 09:42
January 11, 2023 11:17
December 21, 2008 18:53
February 27, 2020 09:27
November 15, 2022 08:54
October 12, 2003 06:19
November 15, 2022 09:06



Racc is a LALR(1) parser generator.
It is written in Ruby itself, and generates Ruby program.


*  Ruby 2.5 or later.


gem install:

  $ gem install racc

setup.rb install:

Type this in the top directory of the extracted archive:

  $ ruby setup.rb config
  $ ruby setup.rb setup
 ($ su)
  # ruby setup.rb install

You can install Racc into your favorite directory by giving
options to setup.rb. e.g.

  $ ruby setup.rb config --prefix=/usr

For details, try "ruby setup.rb --help".

If you don't have C Compiler

You can install Racc without C compilers. Type following
command in config phase.

  $ ruby setup.rb config --without-ext

Testing Racc

Racc comes with simple calculator. To compile this, on shell:

    $ racc -o calc calc.y

This process costs few seconds (or less). Then type:

    $ ruby calc

... Does it work?
For details of Racc, see HTML documents placed under 'doc/en/'
and sample grammar files under 'sample/'.


Racc is distributed under the same terms of ruby.
(see the file COPYING). Note that you do NOT need to follow
ruby license for your own parser (racc outputs).
You can distribute those files under any licenses you want.

Bug Reports

Any kind of bug report is welcome.
If you find a bug of Racc, please report an issue at Your grammar file,
debug output generated by "racc -g", are helpful.

                                                    Minero Aoki