我正在創建一個小型scala DSL,並遇到以下問題,但我沒有真正解決問題。我想要什麼小的概念性例子來實現:Scala DSL:使用無參數方法鏈接方法
(Compute
write "hello"
read 'name
calc()
calc()
write "hello" + 'name
)
代碼定義這個DSL大致是這樣的:
Object Compute extends Compute{
...
implicit def str2Message:Message = ...
}
class Compute{
def write(msg:Message):Compute = ...
def read(s:Symbol):Compute = ...
def calc():Compute = { ... }
}
現在的問題:我該如何計算後襬脫這些括號?可能嗎?如果是這樣,怎麼樣?只是在定義中忽略它們並不能解決編譯錯誤。
耶!整蠱! ))) – noncom 2012-09-11 08:47:33