Implementeer (een niet interactieve versie) van het bekende spel rock, paper scissors. De regels beschreven op wikipedia zijn:

De twee spelers tellen af en steken tegelijk zonder aarzeling de hand uit in de vorm van: een vuist (steen) wint van twee gespreide vingers (de steen maakt de schaar bot); een vlakke hand (papier) wint van een vuist (het papier bedekt de steen); twee gespreide vingers (schaar) winnen van een vlakke hand (de schaar verknipt het papier).

  1. Definieer een datatype Move met de drie keuzes Rock, Paper and Scissors. Instantieer Eq en Show voor Move (indien mogelijk met derive).

  2. Schrijf een datatype Result (ofwel Win, ofwel, Lose, ofwel Draw) om aan te geven of je gewonnen of verloren hebt. Instantieer Eq en Show voor Result (indien mogelijk met derive).

  3. Schrijf een functie outcome die, gegeven twee moves, aangeeft of speler 1 gewonnen heeft.