- Extensible Effects: An Alternative to Monad Transformers by Oleg Kiselyov, Amr Sabry and Cameron Swords Scala translation
- Modular Type Classes by Derek Dreyerm, Robert Harper and Manuel M.T. Chakravarty
- Data types a la carte by WOUTER SWIERSTRA. Scala translation
- Reflection without Remorse by Atze van der Ploeg and Oleg Kiselyov
- Asymptotic Improvement of Computations over Free Monads by Janis Voigtlander
- Finally Tagless, Partially Evaluated by Jacques Carette, Oleg Kiselyov and Chung-chieh Shan
- [Functional Pearl: A Smart View on Dat
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Welcome to Scala version 2.11.6 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_79). | |
| Type in expressions to have them evaluated. | |
| Type :help for more information. | |
| scala> import scalaz._ | |
| import scalaz._ | |
| scala> import Scalaz._ | |
| import Scalaz._ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /** | |
| * http://stackoverflow.com/questions/16015020/what-does-coalgebra-mean-in-the-context-of-programming | |
| **/ | |
| def op[T: Monoid](arg: \/[(T, T), T]): T = { | |
| val m = implicitly[Monoid[T]] | |
| arg match { | |
| case -\/((a, b)) => m.append(a, b) | |
| case \/-(a) => m.zero | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Welcome to Scala version 2.11.5 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_65). | |
| Type in expressions to have them evaluated. | |
| Type :help for more information. | |
| scala> import frdomain.ch3.repository._ | |
| import frdomain.ch3.repository._ | |
| scala> import reader._ | |
| import reader._ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| trait Writes[T] { | |
| def writes(o: T): JsValue | |
| } | |
| trait Reads[T] { | |
| def reads(json: JsValue): T | |
| } | |
| trait Format[T] extends Writes[T] with Reads[T] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| trait AccountRepository { | |
| def query(no: String): \/[NonEmptyList[String], Option[Account]] | |
| def store(a: Account): \/[NonEmptyList[String], Account] | |
| def query(openedOn: Date): \/[NonEmptyList[String], Seq[Account]] | |
| def all: \/[NonEmptyList[String], Seq[Account]] | |
| } | |
| /** | |
| * and an implementation for this trait | |
| **/ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| sealed trait Base | |
| case class D1(...) extends Base | |
| case class D2(...) extedns Base | |
| // Have defined all instances of EncodeJson & DecodeJson for D1 and D2 | |
| // works in 6.0.x but does not compile in 6.1-M5 since DecodeResult is now invariant | |
| implicit val decode: DecodeJson[Base] = DecodeJson { c => | |
| (c --\ "storeDelete").as[D1] ||| | |
| (c --\ "indexState").as[D2] ||| |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // the ADT | |
| sealed trait Account { | |
| def no: String | |
| def name: String | |
| def openingDate: Date | |
| def closeDate: Option[Date] | |
| } | |
| final case class CheckingAccount private[prop](no: String, name: String, openingDate: Date, closeDate: Option[Date]) |
- Feature Learning
- Learning Feature Representations with K-means by Adam Coates and Andrew Y. Ng
- The devil is in the details: an evaluation of recent feature encoding methods by Chatfield et. al.
- Emergence of Object-Selective Features in Unsupervised Feature Learning by Coates, Ng
- Scaling Learning Algorithms towards AI Benjio & LeCun
- A Theory of Feature Learning by Brendan van Rooyen, Robert C. Williamson
- Deep Learning
- Dropout: A Simple Way to Prevent Neural Networks from Overfitting by Nitish Srivastava, Geoffrey Hinton, Alex Krizhevsky, Ilya Sutskever and Ruslan Salakhutdinov
- [Understanding
- Courses and MOOCs
- Introduction to Convex Optimization MITOCW by Prof. Stephen Boyd
- Convex Analysis and Optimization MITOCW by Prof. Dimitri Bertsekas
- Convex Optimization MOOC from Stanford Online
- Convex Optimization at CMU Spring 2015
- Books
- Convex Optimization – Boyd and Vandenberghe - downloadable book
- Convex Optimization Theory - by Dimitri P. Bertsekas
- Theory of Convex Optimization for Machine Learning - download