Modeling Makes the Difference

Instead of a line-by-line conversion, TSRI's modeling approach allows us to ingest a software application and truly transform it into a modern, native, object-oriented target language such as C++, C#, Java, or J2EE, running on Linux, Unix, Windows and/or any realtime target architecture. Our proprietary Intermediate Object Model (IOM) is a language-neutral modeling system that transforms all legacy source languages into modernized target languages. Through the use of the IOM, TSRI simplifies the O (n-squared) language transformation problem to an O (n+1) language transformation problem. The IOM provides a set of generic language constructs that serve as a reusable language-neutral formalism for assessment, documentation, transformation, refactoring, and web-enablement. 

Also, since every application and every language is modernized and transformed at the meta-model stage, every prior project, regardless of language or industry, further develps the toolset and TSRI libraries, resulting in greater value for each future project. At the kernel of this framework are three high-level specification languages; JPGEN™ for defining grammar system and language models, JTGEN™ for defining transformations between these models, and JRGEN™, a 5th generation artificial intelligence language, for model manipulation and analysis that supports first order logic and predicate calculus as well as 3GL and 4GL language constructs.

TSRI's Rules and Grammar Engines

Our solution is driven by a rules engine and a grammar engine. Our grammar systems have been defined for ADA, Visual Basic, Vax Basic, C, C++, COBOL, C#, Java, Jovial, FORTRAN, and more than 30 other languages, as well as TSRI's proprietary Intermediate Object Model (IOM).
At the kernel of TSRI's framework are three high-level-specifications languages:

JPGEN™
Used for defining grammar system and language models

JTGEN™
Used for defining transformations between these models 

JRGEN™ (a fifth-generation artificial intelligence language)
Used for model manipulation and analysis that supports first order logic and predicate calculus as well as 3GL and 4GL language constructs