Jak zlevnit aktualizace programovacích jazyků? Vědci z FIT mají řešení

8. 4. 2022Ivana Macnarová

Naši vědci získali prestižní Advanced ERC grant v hodnotě 77 milionů korun na výzkum zefektivnění a zlevnění aktualizací programovacích jazyků. Programovací jazyky umožňují programátorům komunikovat s počítači a zadat jim úkony, které mají provést.

Počítače a jejich systémy jsou všude kolem nás například v dopravě, bankovních službách, chytrém telefonu nebo automatické pračce. Aby tato zařízení a služby odpovídaly technologickému vývoji a očekávání uživatelů, je nutná jejich aktualizace, nejen kódů, ale i veškeré dokumentace. Tyto změny jsou pro firmy extrémně finančně a časově náročné a náklady se následně promítají do cen výrobků a služeb.

Aby zůstaly programovací jazyky použitelné dlouhodobě, musí reagovat na vývoj v oblasti hardwaru, rozšiřovat se o nové funkce a zároveň se přitom přizpůsobovat novým požadavkům koncových uživatelů. V rámci zdokonalování programovacích jazyků se naši vědci zaměřují na dva směry výzkumu. Na expresivitu jazyků – čím jednodušší bude vyjádření složitých algoritmů a jejich kontextu v programovacích jazycích, tím rychleji a snadněji bude možné jejich prostřednictvím zadat počítačům, co mají dělat. A dále na bezpečnost programovacích jazyků, aby se co nejvíce eliminovaly časté programátorské chyby. Třeba i taková automatická pračka musí vyřešit velké množství složitých procesů, aby úspěšně vyprala prádlo dle zvoleného programu.

Cílem Laboratoře výzkumu programování je najít řešení, jak průběžně vyvíjené inovace programovacích jazyků co nejrychleji, nejsnáze a bez zbytečné chybovosti aplikovat. A v důsledku toho dosáhnout zlevnění aktualizace programovacích jazyků. Když firma přijde s novou verzí programovacího jazyka, nejprve je nutné vytvořit veškerou dokumentaci (manuály, návody, školení, příklady na internetu atd.), aby korespondovala s novou verzí jazyka. Následně musí programátoři přepsat starý kód na nový, aby nové změny používal, program se zjednodušil a eliminovaly se chyby. V laboratoři řeší, jak tyto všechny návazné procesy zautomatizovat.

„Problém je v tom, že nový jazyk nepotřebuje pouze nový kompilátor a související runtime systém, ale také vyžaduje nové nástroje pro vývoj softwaru, knihovny, dokumentaci, vzdělávací materiály nebo školící programy. Sečtou-li se náklady na tohle všechno, vychází nám ohromující částky. Například každá nová hlavní verze Javy přijde Oracle na zhruba 50 milionů dolarů,“ dodává profesor Jan Vitek, který vede výzkumnou skupinu laboratoře v rámci prestižního Advanced ERC grantu a zároveň působí na Khoury College of Computer Sciences, Northeastern University v Bostonu. Fakulta má tu čest být jedinou v České republice, která v roce 2015 tento Advanced ERC grant získala.

Za obsah stránky zodpovídá: Bc. Veronika Dvořáková