Fejlessz ki egy egyszerű domain-specifikus nyelvet (DSL) a kockadobáshoz. A Dungeons & Dragonshoz hasonló játékok játékosai ismerik az ilyen DSL-eket. Például a következő kifejezés: 2 D20 + 1 D6, ami azt jelenti, hogy két 20 oldalú és egy 6 oldalú kockával kell dobnunk.
A 2 d20 + 3 d10 kifejezés megvalósítható a Pharo szintaxisával. A + ugyanolyan metódus, mint bármely más, és a számoktól eltérő osztályokon is megvalósítható. A d20-hoz hasonló metódusok pedig megvalósíthatók a meglévő Integer osztályon osztálykiterjesztésekkel, vagyis olyan metódussal, amely más csomagban található, mint maga az osztály.
Ez a feladat a következő könyvből származik: Learning Object-Oriented Programming, Design and TDD with Pharo, amely a http://books.pharo.org oldalon érhető el. 12. fejezet: Crafting a simple embedded DSL with Pharo.
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Pharo nyelvet 50 feladat segítségével, valódi emberi mentorálással, mindez ingyen.