20 kwietnia 2012

Scala w 49. dzień do Euro 2012


Wczoraj na forum Warszawa JUG zaproponowałem pewną zabawę skojarzoną z upływającym czasem do Euro 2012 - 50 dni do Euro 2012 - idealnie, aby zaczać naukę.... Celem zabawy jest "nauki technologii, którą zwykle mianował TODO."

Mamy 50 dni (wczoraj) i ciekawie będzie móc zasiąść przed ekranem telewizora wiedząc, że przygotowania do tej pozycji były związane z nauką czegoś nowego. Możnaby wtedy świętować nie tylko rozpoczęcie mistrzostw, ale ukończenie rozpoznania czegoś, co warte było 50 dni.

Ja postawiłem na funkcyjne oblicze języka programowania Scala. Niech to będzie mój udział w ogólnopolskim wyścigu ku Euro 2012. Piłka mnie nie kręci, ale Scala już tak. Mam nieodparte wrażenie, że zrozumienie programowania funkcyjnego w Scali pomoże mi znacznie podnieść swój warsztat i w Clojure.

Dzisiaj zacząłem skromnie od pobrania dystrybucji języka Scala 2.10.0-M2 i po przejrzeniu Chapter 2 of Programming in Scala, First Edition "First Steps in Scala" uruchomieniu środowiska scala.
$ scala
Welcome to Scala version 2.10.0-M2 (OpenJDK 64-Bit Server VM, Java 1.7.0-jdk7u4-b19).
Type in expressions to have them evaluated.
Type :help for more information.

scala> println("Hello")
Hello
Obejrzałem prezentację Guerrilla Guide to Pure Functional Programming i popróbowałem się z kilkoma wyrażeniami ze slajdów. Można żyć z tym systemem typów.

Teraz nie pozostaje mi nic innego jak rozpocząć projekt. Chciałbym stworzyć coś w czystej Scali, bez konieczności poznawania dodatkowych bibliotek, czy szkieletów aplikacyjnych i mam nieodparte wrażenie, że najbardziej odpowiednia byłaby jakaś aplikacja desktopowa. Boję się Lifta jako sposobu na wejście w Scalę i stąd te poszukiwania.