In 2017 @giordano (with 2019 @Mason update) wrote about implementing Rock, Paper, Scissors.
Using v1.7 or v1.6, can we do this any better (more: elegantly, performantly, type-stable, gamelike)?
Are there new (or better understood) language elements or uses of the language that appertain?
[added for clarification]
I am a fan of the blog post and have used some of the code in examples over the years.
I am interested in showcasing at least some the same language features and wondering if there are amended approaches that in some manner would improve the implementations.