Ciekawie prezentuje się lista osób, które poświęciły swój czas na rozwój tej wersji z bardzo polskobrzmiącymi nazwiskami.
- Grzegorz Kossakowski - tego gościa miałem okazję poznać osobiście i mam wrażenie, że wszyscy go teraz znają, więc przedstawiać nie trzeba. Sądziłem, że znajdę go na stronie zespołu TypeSafe, ale niestety nie widnieje na liście, aczkolwiek na swoim profilu na LinkedIn stoi jak byk: "Scalac hacker at Typesafe". Się Grześ zahackował i zapomnieli o nim. Chwała za zasługi!
- Hubert Plociniczak - o nim wcześniej nie słyszałem, ale ze strony można wyczytać, że "is a member of the EPFL team working on Scala.", więc trudno się dziwić, że ma swoje miejsce na liście zasłużonych. Chwała się należy!
"Exercises, answers, and hints to go along with the book "Functional Programming in Scala" znajdują się na GitHubie i można samodzielnie popróbować się z funkcyjnymi problemami w Scali.
Oto rozwiązanie pierwszego zadania oznaczonego jako Hard z rozdziału 2. Świadomie nie podaję treści zadania, bo liczę, że wszystko zaszyte jest w sygnaturze. Kto odgadnie, do czego służy funkcja
lift3
? Niezły mind twister.object MyModule { def lift[A,B,C,D](f: (B, C) => D) (g: A => B, h: A => C): A => D = a => f(g(a), h(a)) // Exercise 11 def lift3[A,B,C,D,E](f: (B, C, D) => E) (g: A => B, h: A => C, i: A => D): A => E = a => {val f2: (C,D) => E = f(g(a),_,_) lift(f2)(h, i)(a)} }Początkowo zadanie mnie przygniotło, ale ostatecznie dałem sobie radę i to bez żadnych ściągawek (!) Wystarczyło dokładniej doczytać książkę i...pomyśleć. Jak zwykle zresztą. Teraz Twoja kolej.
Brak komentarzy:
Prześlij komentarz