Facebook vyvinul Transcoder, který převádí kód napříč programovacími jazyky
Zdroj: VentureBeat
Každý funkční kód začíná volbou konkrétního programovacího jazyka, na kterém se programátor rozhodne stavět. Jeho převedení do jiného jazyka je poté poměrně náročnou výzvou. Facebook ovšem tvrdí, že jeho vývojáři vyvinuli neurální transcoder, který by měl dokázat převést kód z jednoho programovacího jazyka na druhý.
V současném stavu zvládá nástroj údajně přesvědčivě převádět aplikace mezi programovacími jazyky C++, Javou a Pythonem. Převod mezi různými programovacími jazyky bývá zpravidla velice nákladný, a tak by podobný transcoder mohl ušetřit až desítky milionů korun. Transcoder dokáže úspěšně převádět mezi jazyky díky množství záchytných bodů v kódu. Většina programovacích jazyků má totiž společné výrazy „for“, „while“, „if“ a „try“, dále pak různé operátory, číslice a řetězce.
Zdroj: Pixabay
Tento transcoder se učil na veřejných repositářích GitHubu, kde se náchází zhruba 2,8 milionů úložišť. Během této doby se transcoder naučil překládat funkce zakomponované ve zdrojovém kódu do jednotlivých jazyků. Dále pak trancoder dostal k dispozici 852 stejných kódových řešení pocházejících z GeeksforGeeks, ale napsané v různých jazycích.
Pravdou zůstává, že prozatím nedokáže převést kód se stoprocentní přesností. Jinými slovy to znamená, že stejné musí přijít nějaký odborník a opravit všechny bugy. Podle vývojářů však transcoder jasně pochopil syntaxi jednotlivých jazyků, používané datové struktury a jednotlivé knihovny. Facebook však není zdaleka jedinou společností, která se něco podobného snaží vytvořit. Pokud se to jednou povede, bude třeba možné programovat pouze v jediném pseudojazyce a pak si jen vyberete do kterého programovacího jazyka se váš kód převede.