Scala มักใช้วิธีนี้เพื่อสร้าง DSLs ภาษาเฉพาะโดเมน
สาเหตุหลักมาจาก Scala ไม่มีโอเปอเรเตอร์และสามารถเรียกใช้เมธอด Scala ได้โดยง่าย ตัวอย่างเช่น
5 เป็นวัตถุจำนวนเต็ม ในการคำนวณ 5 บวก 7 คุณสามารถเขียนได้
val ans = 5.add (7) ยกเว้นว่าวิธีการเติมชื่อจริง "+" ดังนั้นคุณจะเขียน:
val ans = 5. + (7) แต่ใน Scala คุณไม่จำเป็นต้องใส่ "." ในการเรียกใช้เมธอดหรือวงเล็บ "()" ล้อมรอบอาร์กิวเมนต์เพื่อเรียกเมธอด + บนวัตถุ 5 คุณต้องเขียน
val ans = 5 + 7 ซึ่งทำงานได้อย่างสมบูรณ์แบบเนื่องจาก Scala ไม่มีผู้ให้บริการที่จะรบกวนการตั้งชื่อวิธีการอันชาญฉลาดของคุณ ตอนนี้ขยายความคิดนั้นไปที่คลาสและวัตถุของคุณเองรวมถึงความจริงที่ว่าคุณสามารถ "แทนที่" วิธีการเช่น + รวมถึงสร้างวิธีการของคุณเองที่ชื่อ >>> หรือ ::! หรือ @ * @ หรือเพียงแค่ชื่อข้อความธรรมดาเช่น fancify