2017-02-21 35 views
0

我想在Ruby中製作一個DSL,在那裏我可以使用簡單的命令做一些事情。例如「GO PRINT 10 *」將打印10顆星號碼 或「打印5號碼&」將打印5號字符。任何人都知道很好的教程? 我聽說寶石溫順這值得關注嗎?Ruby中的簡單DSL

+0

我建議先學習一下自己編寫DSL的基礎知識。否則,溫順可能會變成一個魔法黑匣子,可能很難理解。 – Casper

+1

Russ Olsen_中的書籍_Design Patterns in Ruby有關於DSL的一章。 –

+0

[在Ruby中編寫DSL的教程]的可能重複(http://stackoverflow.com/questions/4936146/tutorials-for-writing-dsl-in-ruby) –

回答

1

下面是一些有關你想要做什麼鏈接:

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 calculatorthesethese