JavaCC MiniP

もう少しJavaCCを使って、
class A { } と、class B { } をいう文字列を受け付けるようなプログラムを作ってみた。これも簡単にできてしまう。

BNF記法で記述すると、
<program> :::= <clazz> <name> <cstart> < cend>
<clazz> ::= “class”
<name> ::= “A” | “B”
<cstart> ::= “{“
<cend> ::= “}”

続きを読む

カテゴリー: Java

JavaCC

JavaCCを使ってみた。

Ref: JavaCC Home
Ref: JavaCC Grammar Repository

準備
javacc-3.2.tar.gz をダウンロードし、展開する。できあがったディレクトリにあるbinディレクトリにパスを通す。

手順
1.文法を定義した jjファイルを作成 … hello.jj
2.JavaCCでparserを生成 … javacc Hello.jj
3.javacコマンドでコンパイル … javac Hello.java
4.実行 … java Hello

起動クラスを別に作成する場合は、2, 3の間に起動用クラス作成を行い、3では起動クラスをコンパイルする。

続きを読む

カテゴリー: Java