Dado

Dado

Fácil

Instrucciones

Desarrolla un lenguaje específico de dominio (DSL) simple para tirar dados. Quienes juegan a juegos como Dungeons & Dragons están familiarizados con este tipo de DSL. Un ejemplo es la siguiente expresión: 2 D20 + 1 D6, que significa que debemos tirar dos dados de 20 caras y un dado de 6 caras.

La expresión 2 d20 + 3 d10 se puede implementar usando la sintaxis de Pharo. + es un método como cualquier otro y se puede implementar en clases que no sean números. Métodos como d20 se pueden implementar en la clase Integer que ya existe con extensiones de clase, es decir, un método en otro paquete distinto del que contiene la clase.

Nota

Este ejercicio proviene del libro: Learning Object-Oriented Programming, Design and TDD with Pharo, disponible en http://books.pharo.org. Capítulo 12: Crafting a simple embedded DSL with Pharo.

Editar en GitHub El enlace se abre en una ventana o una pestaña nuevas
Pharo Exercism

¿Todo listo para empezar Dado?

Regístrate en Exercism para aprender y dominar Pharo con 50 ejercicios y mentoría humana real, todo gratis.