heredocj

HeredocJパーサ設計メモ

Heredocの接頭辞(''',""",

コンパイラ・コンパイラの使用を断念

コンパイラ・コンパイラを使わない理由 本音 難しい。 建前 コンパイラ・コンパイラのパーサは、チェックが厳しすぎる。 不完全・未完成のコードでもパース出来るようにしたい。 アジャイル開発 最初から、未経験の技術(コンパイラ・コンパイラ)を使うのは…

設計

忘れないようにメモ。 特殊文字 一々エスケープしないで済むように、 HereDocumetn中では、特殊文字(\,",\nなど)も普通の文字として扱う。 特殊文字として扱いたい場合には、Javaコードとして埋め込む(など)。 スクリプトレットの有効・無効モード スクリ…

設計方針

忘れないようにメモ。 新しく覚えること最小限に GroovyやVelocityのように、新しい文法を定義するのではなく、 J2SEの文法をそのまま使う。 (僕自身、フレームワーク独自のルールを覚えるのが嫌になっているのもので) →設計も簡単になるはず。(新しい文…

BNFが書けない

制御構造(if,forなど)の組み込みや、HereDocumentのネストを考えると、 構文解析にコンパイラ・コンパイラが必要と思われる。コンパイラ・コンパイラに食わせるファイルを書く前に、 まず、文法をBNF(バッカス・ナウア記法:Backus-Naur Form)を落とすのが良…

プロジェクトホームページ(一応)開設

http://www.itmedia.co.jp/enterprise/articles/0706/01/news012.html を見ながら、SourceForge.jpにプロジェクトを登録。 まだ空っぽだけど、 HereDocument in JavaプロジェクトホームページのURLは、 https://sourceforge.jp/projects/heredocj

カスタマイズ記法でブレイクスルー

外部設定ファイルを使おう! 改行文字や、フィルタメソッドの設定を、 HereDocument in Java(heredocj)のソースコードに、どう記述すべきかで迷ってたけど、 これでスッキリ。

HereDocument その2

作ってみた。 import java.io.*; public class Hdj2Java { public static void main(String[] args) { try { File src = new File(args[0]); File dist = new File(args[1]); Reader in = new FileReader(src); try { Writer out = new FileWriter(dist); tr…

HereDocument

Javaで、ヒアドキュメントが、使ーえたら、 イチイチ、くくらず、エスーキューエルが書けーる。 Javaでも、HereDocumentみたいに、引用符でくくらず文字列を書けるようにならないだろうか? そんな長い文字列は、コードから追い出せ、とか言われるかもしれな…