For the first time, I was able to understand what an applicative is! ๐ ]]>

I will put more detail into this paragraph.

Thanks for your feedback. ]]>

The sentence about “function f calculates its argument times 6” is a bit confusing. I assume f would be v => new LogBox(v*6, “world”), right? ]]>

Italian keyboard habitus, I suppose? ๐

]]>val transformedLenghtOf = map( rawLeng

Should be rawLeng -th- Of !

]]>object Main extends App {

class MyBox[T](val value:T)

def map[A,B]( rawfunc:A=>B ) : MyBox[A]=>MyBox[B] = (a:MyBox[A]) => new MyBox( rawfunc(a.value) )

val boxedstring:MyBox[String] = new MyBox(“Hello”) // a boxed value

def rawLengthOf(a:String) : Int = a.length // the raw function we want to use

val transformedLenghtOf = map( rawLenghtOf ) // applying the transformation, so we get our new function

val result:MyBox[Int] = transformedLengthOf( boxedstring ) // applying the new function

}

]]>http://adit.io/posts/2013-04-17-functors,_applicatives,_and_monads_in_pictures.html ]]>