Goal
Recently released Play 2.0 framework brings new way of creating web services
to Java community. It’s nice and fun, but I dislike few components. One of them is the router with its custom routes definitions file, separate compiler and weird logic.
As a Ruby developer I started wondering if it could be implemented in Scala as simple DSL.
The requirements were quite simple:
- statically compiled
- statically typed
- easy to use
- extensible
- it should provide (again, statically typed) reverse router
- use type inference as much as possible
- do not use much parentheses