https://github.com/memoizr/robot-tlp
A Typelevel approach to a familiar problem
https://github.com/memoizr/robot-tlp
Last synced: 3 months ago
JSON representation
A Typelevel approach to a familiar problem
- Host: GitHub
- URL: https://github.com/memoizr/robot-tlp
- Owner: memoizr
- License: mit
- Created: 2016-11-12T23:06:13.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2016-11-28T15:14:33.000Z (over 8 years ago)
- Last Synced: 2025-02-12T07:55:33.186Z (5 months ago)
- Language: Scala
- Size: 17.6 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Typelevel robots
The Robot Kata is a well known exercise, but could it be made to be completely typesafe? What if instead of having runtime errors, or even representing illegal moves with a sum type we instead let the compiler enforce all the constraints?This is an exploration of what it could look like to solve this problem using this style and approach. Particular attention was directed into making all the type-level code as expressive as possible, to a ridiculous extent. There's value in going overboard and seeing what happens when you turn it all to 11. Hope you enjoy this and leave some feedback (open an issue maybe?).
Enjoy!