6.10 参考文献

[1]Odersky, Martin, and Matthias Zenger. 2005. Scalable component abstractions. Proceedings of the 20th annual ACM SIGPLAN conference on object-oriented programming systems, languages, and applications, pp 41-57.

[2] Wampler, Dean, and Alex Payne. 2009. Programming Scala: Scalability = Functional Programming + Objects. O’Reilly Media.

[3] Gamma, E., R. Helm, R. Johnson, and J. Vlissides. 1995. Design Patterns: Elements of reusable object-oriented software. Addison-Wesley Professional.

[4]Ford, Neal, Advanced DSLs in Ruby, http://github.com/nealford/presentations/tree/master.

[5]Emir, Burak, Martin Odersky, and John Williams. Matching Objects With Patterns. LAMP-REPORT-2006-006. http://lamp.epfl.ch/~emir/written/Matching-ObjectsWithPatterns-TR.pdf.

[6]Evans, Eric. 2003.Domain-Driven Design: Tackling complexity in the heart of software. Addison-Wesley Professional.

[7]Hofer, Christian, Klaus Ostermann, Tillmann Rendel, and Adriaan Moors. Polymorphic Embedding of DSLs. Proceedings of the 7th international conference on generative programming and component engineering, 2008, pp 137-148.

[8]ScalaTest. http://www.scalatest.org.

[9]Wadler, Philip. 1992. The essence of functional programming. Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on principles of programming languages. pp 1-14.

[10]Emir, Burak. Monads in Scala. http://lamp.epfl.ch/~emir/bqbase/2005/01/20/monad.html.

[11]Pierce, Benjamin C. 1991. Basic Category Theory for Computer Scientists. The MIT Press.

[12]Ghosh, Debasish. Implementation Inheritance with Mixins—Some Thoughts.Ruminations of a Programmer. http://debasishg.blogspot.com/2008/02/implementation-inheritance-with-mixins.html.

[13]Venners, Bill. Abstract Type Members versus Generic Type Parameters in Scala. http://www.artima.com/weblogs/viewpost.jsp?thread=270195.

[14]Ghosh, Debasish. Scala Self-Type Annotations for Constrained Orthogonality. Ruminations of a Programmer. http://debasishg.blogspot.com/2010/02/scala-self-type-annotations-for.html.