tôi đang tạo một DSL nhỏ scala và chạy vào vấn đề sau mà tôi không thực sự có một giải pháp. Một ví dụ nhỏ về khái niệm của những gì tôi muốn đạt được:Scala DSL: phương pháp chuỗi với phương pháp không tham số
(Compute
write "hello"
read 'name
calc()
calc()
write "hello" + 'name
)
mã xác dsl đây là loại như thế này:
Object Compute extends Compute{
...
implicit def str2Message:Message = ...
}
class Compute{
def write(msg:Message):Compute = ...
def read(s:Symbol):Compute = ...
def calc():Compute = { ... }
}
Bây giờ câu hỏi: làm thế nào tôi có thể thoát khỏi những ngoặc sau calc ? là nó có thể? nếu vậy, làm thế nào? chỉ cần bỏ qua chúng trong định nghĩa không giúp đỡ vì lỗi biên dịch.
Yay! Khôn lanh!)))) – noncom