Další nový jazyk

12. 10. 2011 11:56 (aktualizováno) zboj

V poslední době jsme zažili záplavu nových jazyků. Hodně vývojářů má k podivným novotám jako JavaFX přirozenou nedůvěru, často hraničící s odporem. Do stejné kategorie spadají Ceylon od Red Hatu, Go od Googlu nebo CoffeeScript.

Google právě představil další nový jazyk, Dart. Zatímco jejich Go má nahradit C(++), Dart se zaměřuje na web a má být nástupcem Javascriptu (i když je plánována i podpora pro běh na serveru). Přes a priori nedůvěru má však tento jazyk hlavně pozitiva. V čem spočívají?

Jazyk je dynamicky typovaný, ale typy lze používat volitelně. To je velké výhoda, někdy se bez dynamického typování neobejdeme, ale pro většinu kódu chceme kontrolu překladače. Obsahuje (jako všechny moderní jazyky) uzávěry. Je objektový a založený na třídách (včetně podpory super). Umožňuje dynamické vyhodnocování výrazů. A protože zatím kromě experimentálního překladače Googlu neumí s Dartem nic pracovat, lze jej přeložit do Javascriptu.

Z pohledu tvůrce kompilátorů je Dart velice zajímavým a užitečným počinem. Mnoho jazyků lze kompilovat do Javascriptu, ale emulovat třídní dědičnost v JS je docela peklo. Protože překlad z Dartu do JS má Google vyřešen velmi dobře (což není překvapením, mají spoustu zkušeností s GWT), mají teď vývojáři „transpilátorů“ (transpilers, z trans-compiler) k dispozici jednodušší cílový jazyk. Jako příklad lze uvést CoffeeScript. Převod do JS není triviální, s Dartem to je hračka (oba jazyky si jsou vlastně koncepčně velmi podobné).

Sdílet