Oko kojeg ste programskog jezika najviše uzbuđeni i mislite da će biti vrlo bitan i popularan u budućnosti? Čini mi se da je to malo kontroverzna tema u programerskoj zajednici zadnje vrijeme i imamo dosta novih i staro-novih kandidata koji se trenutno natječu za popularnost s “klasičnim” popularnim jezicima (Java, JavaScript, C++, Python, Ruby).
U novom ruhu
JavaScript ES6/7, tj. ECMAScript 2015/2016 iliti JavaScript^2 koji osim modula, klasa i sl. često-traženih mogućnosti, donosi i nekoliko dosta zanimljivih mogućnosti iz asinkronog svijeta kao što su generatori, obećanja (engl. promises) i async
/await
za vrlo ljudski-razumljiv način pisanja korutina.
Naravno, JavaScript još uvijek pati od nemogućnosti statičnog kompajliranja (još uvijek se veselimo kad u browseru vidimo kakav Doom ili Windows 95 uz uspuhani procesor, što je daleko od “nativnih” mogućnosti) i lagano-prenosivih izvršnih datoteka koje jezici poput Go-a imaju, što navodi neke pojedince na prelazak na druge jezike.
Elixir je novo Ruby-oliko pakiranje Erlanga. Nudi navodno dosta humanu sintaksu poznatu Ruby programerima koja donosi sve lude mogućnosti paralelizacije iz Erlanga. Dobio sam dosta preporuka za ovaj jezik od poznanika, iako je ekosustav još dosta mlad, čini se.
###Statični programski jezici
Tu ima nekoliko zanimljivih kandidata. Jezici koji su napokon donijeli poštene upravitelje paketa (engl. package managers) u svijet statičnih jezika (CMake za C++ nije baš oličenje ugode korištenja). Također, gotovo bez iznimke nude i dobre priče za paralelizaciju i nekakve korutine (gorutine, rorutine? …). Go mi se osobno čini dosta privlačan zbog veličine ekosustava i dobrih primjera praktične primjene. No sintaksa i Go-a i Rusta mi nije baš primamljiva. Imam osjećaj da bi se nakon Pythona, Rubyja, čak i Jave mučio i u osnovnim stvarima.
- Go – dijete iz Googleovih hodnika, vrlo racionalan razvoj, skroman korak naprijed u odnosu na C što se teoretskih mogućnosti tiče, ali se zato cijela sintaksa navodno može držati u glavi
- Rust – malo hrabrija alternativa Go-u iz Mozzilinih odaja, ali ne toliko popularna (i Servo, Rustova killer aplikacija “samo što nije gotova” već godinama). Nekoliko utjecajnih Rubysta i Pythonaša je odmah uskočilo u ovaj jezik, tako da već postoje dobre među-jezične integracije.
- Crystal – naizgled bolja sintaksa, nije baš popularan za sad
###Funkcionalni programski jezici
Filozofski i teoretski jako čisti i skladni, harmonija koda za harmoniju uma itd. Znam ljude koji su oduševljeni njima, čuo sam od ljudi koji rade s npr. Haskellom svakodnevno u većim firmama da zna biti vrlo problematično kada se treba prilagoditi sustavima iz stvarnoga svijeta koji nisu toliko “funkcionalno čisti”. Mene osobno sintaksa malo odbija. Dosta mi je to malo Elispa što moram znati za podesiti Emacs
- Clojure – Lisp za JVM, radi čak i na frontendu kao ClojureScript
- Haskell – jezik izašao iz akademije koji proživljava novu renesansu i ljudi ga počinju koristiti u pravim sustavima
Pobjednik?
Koja su vaša mišljenja o ovim jezicima? Imate li već nekog favorita kojeg izučavate u slobodno vrijeme ili čak koristite na poslu? Sanjarite li o nekom drugom jeziku kojeg nisam ovdje naveo? Može li se uopće predviđati koji će od ovih jezika zaživjeti u budućnosti? Treba li ih naučiti sve ili niti jednog?