Scala thường được sử dụng theo cách này để tạo DSL, Ngôn ngữ cụ thể cho miền.
Chủ yếu điều này là do Scala không có toán tử và cú pháp gọi phương thức Scala có thể được viết tắt. Ví dụ:
5 là một đối tượng Integer. Để tính 5 cộng 7 bạn có thể viết
val ans = 5.add (7) ngoại trừ phương thức bổ sung thực sự được đặt tên là "+" vì vậy bạn sẽ viết:
val ans = 5. + (7) nhưng trong Scala, bạn không cần bao gồm "." trong các cuộc gọi phương thức hoặc dấu ngoặc đơn "()" xung quanh các đối số để gọi phương thức + trên đối tượng 5, bạn sẽ viết
val ans = 5 + 7 hoạt động hoàn hảo vì Scala không có toán tử nào can thiệp vào sơ đồ đặt tên phương thức thông minh của bạn. Bây giờ hãy mở rộng ý tưởng đó đến các lớp và đối tượng của riêng bạn, bao gồm cả việc bạn có thể "ghi đè" các phương thức như + cũng như tạo các phương thức của riêng bạn có tên >>> hoặc ::! hoặc @ * @ hoặc chỉ tên văn bản đơn giản như fancify.