せかいや

いまいるここを、おもしろく http://sekai-in-the-box.appspot.com/

【Ruby】まつもと直伝 プログラミングのオキテ 読書メモ

 
■topic
study about this page -> http://itpro.nikkeibp.co.jp/article/COLUMN/20070604/273453/?ST=oss&P=5

Mac慣れない。。SOS
 XoX


 

もう一つのDSLの実現方法はインタプリタを用意するものです。とはいえ、毎回アプリケーションごとに言語を文法から設計・実装するのも大変なので、定型の文法を採用して、ライブラリ・ルーチンを使って読み込みます。
 具体的には文法にXMLを使って、DOM(Document Object Model)などのXML処理ライブラリを使って文法解釈を行います。Javaアプリケーションの設定ファイルにXMLが採用される理由の一つがこれです。

ふむふむなるほど!

言語を使ってDSLを実現する
 例:Rubyを使ったRuby
 
インタプリタを使ってDSLを実現する
 例:XMLを使ったJavaXMLパーサーを使って文法を解釈)

という感じかな。
だからこそRubyは「言語内」DSLなのか。