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 vědci na FIT ČVUT 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 vědců z Laboratoře výzkumu programování na FIT ČVUT v Praze 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ědci ř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 v hodnotě tří milionů eur (cca 77 mil. Kč) a zároveň působí na Khoury College of Computer Sciences, Northeastern University v Bostonu. FIT ČVUT v Praze má tu čest být jedinou fakultou v České republice, která v roce 2015 tento Advanced ERC grant získala.
Více informací o Laboratoři výzkumu programování najdete na webu FIT ČVUT a o projektu na webu ELE.