Earlier quoted context omitted.
> use some kind of "magic" No it doesn't use magic, but it does take a language that is burdened with a complex type system and throws it out the window. You also are glossing over a huge host of complexity around build/deployment. What jvm are you targeting? Is it on the servers you are deploying to? Are you going to make a fat jar? If not, how are you doing dependency resolution? Is your build artifact something th…
> No it doesn't use magic, but it does take a language that is burdened with a complex type system and throws it out the window. What are you talking about? Spray works hand-in-glove with the Scala type system; would, in fact, be impossible in a language without it. > You also are glossing over a huge host of complexity around build/deployment. What jvm are you targeting? Is it on the servers you are deploying to? Ar…
In the example you linked to: https://github.com/spray/spray/blob/release/1.1/examples/spr...
The "main" function dispatch is not type safe (nor can it be given Spray's reliance on the current akka type model).
My experience is that anything that relies on akka ends up throwing out a huge majority of useful type safety because it is hard to minimize it. A bunch of the advantages you mention around AOP and not monkey patching are due to this.