На GitHub опублікували транскомпілятор коду TransCoder, він автоматично перетворює тексти з однієї мови програмування на іншу та використовує системи машинного навчання. Проєкт створили дослідники з команди Facebook.
Зараз TransCoder здатен оперувати мовами Java, C++ і Python. Наприклад, можна скористатись двома готовими моделями машинного навчання:
- першою: для перекладу з C++ на Java, з Java на C++ і з Java на Python;
- або другою: з C++ на Python, з Python на C++ чи з Python на Java.
Систему машинного навчання реалізували на базі Pytorch, а моделі тренували на відкритих проєктах з GitHub. Також можна створити моделі для інших мов програмування і перевірити їх через набори тестів (пряме посилання на архів з тестами є в репозиторії).
TransCoder розвивається під ліцензією CC-BY-NC 4.0, тобто призначений лише для некомерційного використання. Розробники кажуть, що він працює краще, ніж комерційні рішення. Наприклад, під час тестувань варіант TransCoder був на 33% точніший, ніж у j2py (це інструмент, що перекладає з Java на Python).
Ще немає коментарів