W wakacje zacząłem zgłębiać temat pt. Scala. Używają u nas w banku Twitter Finagle. Biblioteka klient/serwer www, z obsługą asynchroniczną. Bardzo to fajnie wygląda i mały projekcik zrobiłem. Problem polega na tym, że ile razy miałbym coś zrobić w Scali to mnie krew zalewa. Laptop (edit: mój prywatny) ma 4GB i jak załaduję IntelliJ + SBT, to walczy na granicy swoich możliwości. Nie śmiem właściwie przeglądarki włączyć. Uruchamianie, kompilacja - zajmuje to sporo czasu, choć projekt jest mikro.
Czy Kotlin będzie lepszym kandydatem do rozwoju? Z opisów wygląda, że jest szybszy, choć nie tak elastyczny jak Scala. Pattern matching nie bardzo (dzone). Zamiast Twitter Finagle używałbym może tworu o nazwie ktor.
Dlaczego nie java? Bo java ma jednak słabe wsparcie dla programowania funkcjonalnego. Nie wszystko da się mapować, zbierać. Brak funkcji zip
. I ciągle te wyjątki. Przez łapanie wyjątków w lambdach, trzeba z nich w ogóle rezygnować albo pisać od cholery boilerplate'a. Na takie problemy natrafiłem, choć jeszcze niewiele w tym robiłem. Stwierdziłem, że nie tędy droga.
Czy ktoś już szedł tą drogą (Scala -> Kotlin), albo może po prostu wie, coś na ten temat? Najlepiej z własnego doświadczenia.