<div dir="ltr">As a former Googler, I&#39;ve spent a lot of years writing Java code that uses dependency injection, and this relies heavily on the ability to have custom annotations/attributes in the language - particularly, user-defined attributes on function parameters - and to generate additional code at compile time via annotation processors. Although dependency injection does have it&#39;s detractors, it&#39;s getting better (current best of breed isĀ <a href="http://google.github.io/dagger/">http://google.github.io/dagger/</a>), and it solves an amazing array of problems, including the ability for asynchronous programming to disappear into the underlying framework - you just write synchronous code and the framework handles the rest (no more futures!).<div><br></div><div>Now, you can of course do dependency injection without custom attribute support in the language, but it&#39;s much more cumbersome. The user-defined attributes allow you to specify, in a simple declarative way, the runtime dependencies between various classes. Without it you have to build up those dependencies in code, using some sort of fluent interface or builder pattern.</div><div><br></div><div>So my question is, is there any plan for Swift to support user-created annotations, and annotation processing compilation stages?</div><div><br></div><div>-- <br><div class="gmail_signature">-- Talin</div>
</div></div>