CrossTL: A Universal Programming Language Translator with Unified Intermediate Representation
By: Nripesh Niketan, Vaatsalya Shrivastva
Potential Business Impact:
Translates code between many computer languages.
We present CrossTL, a universal programming language translator enabling bidirectional translation between multiple languages through a unified intermediate representation called CrossGL. Traditional approaches require separate translators for each language pair, leading to exponential complexity growth. CrossTL uses a single universal IR to facilitate translations between CUDA, HIP, Metal, DirectX HLSL, OpenGL GLSL, Vulkan SPIR-V, Rust, and Mojo, with Slang support in development. Our system consists of: language-specific lexers/parsers converting source code to ASTs, bidirectional CrossGL translation modules implementing ToCrossGLConverter classes for importing code and CodeGen classes for target generation, and comprehensive backend implementations handling full translation pipelines. We demonstrate effectiveness through comprehensive evaluation across programming domains, achieving successful compilation and execution across all supported backends. The universal IR design enables adding new languages with minimal effort, requiring only language-specific frontend/backend components. Our contributions include: (1) a unified IR capturing semantics of multiple programming paradigms, (2) a modular architecture enabling extensibility, (3) a comprehensive framework supporting GPU compute, graphics programming, and systems languages, and (4) empirical validation demonstrating practical viability of universal code translation. CrossTL represents a significant step toward language-agnostic programming, enabling write-once, deploy-everywhere development.
Similar Papers
UniPar: A Unified LLM-Based Framework for Parallel and Accelerated Code Translation in HPC
Distributed, Parallel, and Cluster Computing
Helps computers rewrite code for faster processing.
Beyond Language Barriers: Multi-Agent Coordination for Multi-Language Code Generation
Software Engineering
Helps computers write better code in any language.
ML-Triton, A Multi-Level Compilation and Language Extension to Triton GPU Programming
Computation and Language
Makes AI learn faster by using computer chips better.