Skip to content

Repository files navigation

IRIS - A Universal Code Translator

The IRIS project is a code translator that can convert code from one language to another (currently it's only among JavaScript and Python in purely semantic conversion). It is designed to be a universal code translator that can convert code from any language to any other language. The project is still in its early stages and only supports a few languages at the moment. The goal is to eventually support all major programming languages.

Its structure involves numerous parts:

graph TD
A[Original Code]
B[Language-specific AST]
C[IRIS United IR]
C1[High-Level IR]
C2[Low-Level IR]
A -->|lexer & parser| B
B -->|handler| C
C --- C1
C --- C2
C1 --> P
C2 --> P
subgraph P [Translation]
P1[Syntax Translation]
P2[Standard Library Translation]
P3[Common Library Translation]
end
D[Target Language AST]
E[Translated Code]
P -->|handler| D
D -->|codegen| E
Loading

Currently, we are working on the following languages:

  • Translation between Python and JavaScript/TypeScript
  • Translation between Rust and C/C++

We know that every language is irreplaceable since there's no one-size-fits-all solution. However, we believe that IRIS can help developers to translate code between languages more efficiently. Anyway, just for fun.

About

A universal code translator based on intermediate representations.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages