wandermatt
If you don't want to watch the video, a version of this talk was also given at Strange Loop, the slides for that one are available online: http://www.infoq.com/presentations/Functional-Data-Structure...
From his 2011 NEScala talk on functional data structures, covering practical considerations like locality of references and caching. Available on vimeo http://vimeo.com/20262239
That seems fairly close to the Haskell signature, although somewhat less readable. However, in Scala 2.8, things got more complicated with the addition of the implicit. Consider two functions that I might apply to a collection of integers:
Set(1,2,3,4).map{ _2 } // Set[Int] = Set(2, 4, 6, 8)
Set(1,2,3,4).map{ _.toString } // Set[String] = Set(1, 2, 3, 4)
Nothing surprising here, we provide a method A->B and use it to map from Set[A] -> Set[B] Now lets use the optimized BitSet collection, which efficiently stores integers:
BitSet(1,2,3,4).map{ _2 } // BitSet = BitSet(2, 4, 6, 8)
BitSet(1,2,3,4).map{ _.toString } // Set[String] = Set(2, 4, 3, 1)
Notice that the collection type is BitSet for the function with return type of Int, but plain Set for the function with return type of String. This functionality is brought to you through the implicit parameter.
http://android.stackexchange.com/questions/2432/how-to-backu...
Not sure if you're thinking of TextMate or TextWrangler. TextWrangler does have a Mac-like UI and uses Apple-style keyboard shortcuts. TextMate's UI is not particularly Mac-like, it exposes shell commands quite directly, and most of the macros are shell/ruby/etc scripts.
To illustrate the difference, TextWrangler has a menu command to sort the current document, and a menu command to remove duplicate lines. TextMate has "Filter Through Command" which lets you apply arbitrary command like "sort | uniq" to the current document.