Транскомпілятор

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Транскомпілятор або транспілятор (англ. S2S compiler) — тип транслятору, який приймає вихідний код програми, написаної на мові програмування в якості вхідних даних і виконує еквівалентний вихідний хід на тій самій або іншій мові програмування[1][2].

Транскомпілятор виконує перетворення між мовами програмування, які працюють майже на одному рівні абстрації, в той час як традиційний компілятор перекладає з мови програмування більш високого рівня на мову програмування нижчого рівня. Наприклад, транскомпілятор може виконувати переклад програми з Python на JavaScript, в той час як традиційний компілятор перекладає з мови С на асемблер чи з Java в байт-код.

Автоматичний компілятор, що розпаралелює, часто приймає в якості вхідних даних програму на мові високого рівня, а за тим перетворює код та анотує його анотаціями паралельного коду або мовними конструкціями. Інша мета компіляції із вихідного коду у вихідний — переклад застарілого коду для використання наступної версії базової мови програмування або АРІ, який порушує зворотню сумісність. Транскомпілятори можуть підтримувати структуру перекладеного коду як можна ближче до вхідного, щоб полегшити розробку та обробку вхідного коду, або можуть змінити структуру вхідного коду настільки, щоб перекладений код не був схожий на вихідний код.

Існують також налагоджувальні утиліти, які відображають транскомпільований вихідний код назад.

Примітки[ред. | ред. код]

Джерела[ред. | ред. код]