0
我想在Ruby中製作一個DSL,在那裏我可以使用簡單的命令做一些事情。例如「GO PRINT 10 *」將打印10顆星號碼 或「打印5號碼&」將打印5號字符。任何人都知道很好的教程? 我聽說寶石溫順這值得關注嗎?Ruby中的簡單DSL
我想在Ruby中製作一個DSL,在那裏我可以使用簡單的命令做一些事情。例如「GO PRINT 10 *」將打印10顆星號碼 或「打印5號碼&」將打印5號字符。任何人都知道很好的教程? 我聽說寶石溫順這值得關注嗎?Ruby中的簡單DSL
下面是一些有關你想要做什麼鏈接:
https://robots.thoughtbot.com/writing-a-domain-specific-language-in-ruby
Tutorials for writing DSL in Ruby
https://www.leighhalliday.com/creating-ruby-dsl
如果你想有一個非常靈活 DSL(即,在其中你不能告訴它它實際上是Ruby,這聽起來像你想要的),我建議學習一種語言,如Racket,它非常適合於創建各種語言,例如,a brainf*ck clone,a stack-based calculator,these和these。
我建議先學習一下自己編寫DSL的基礎知識。否則,溫順可能會變成一個魔法黑匣子,可能很難理解。 – Casper
Russ Olsen_中的書籍_Design Patterns in Ruby有關於DSL的一章。 –
[在Ruby中編寫DSL的教程]的可能重複(http://stackoverflow.com/questions/4936146/tutorials-for-writing-dsl-in-ruby) –