Skip to content
Book Open access

If You Build It, Will They Come? Lessons from 20 Years of Industrial Use of a Code Transformation DSL

Oct 2026 · Proceedings of the 41st IEEE/ACM International Conference on Automated Software Engineering · pp. 4315-4327 · 0 citations · 59 references

TL;DR

An experience study of RcScript, a proprietary code-transformation DSL used in production at Raincode and Raincode Labs for more than 20 years, and of the long-lived transformation platform built with it to modernise PACBASE-generated COBOL, which shows a consistent pattern of features that improve local readability are used, whereas features that hide errors, are hard to read, or depend on weak editor support are avoided.

Abstract

Legacy modernisation at industrial scale requires automated source-to-source transformation rather than manual refactoring. This paper reports an experience study of RcScript, a proprietary code-transformation DSL used in production at Raincode and Raincode Labs for more than 20 years, and of the long-lived transformation platform built with it to modernise PACBASE-generated COBOL. The platform has been applied to more than 500 million lines of legacy source code. We highlight one engineering question within that industrial ASE solution: which optional language features of the implementation DSL are actually adopted in practice, which are avoided, and why. The study combines static analysis of two production configurations with an interview with the lead maintainer. The observed feature use varies, yet the results show a consistent pattern: features that improve local readability are used, whereas features that hide errors, are hard to read, or depend on weak editor support are avoided or used only sparingly. From that, we distil practical lessons for the design and evolution of industrial DSLs and long-lived automated transformation platforms.

Read PDF

Similar papers

Open access Oct 2026

LLM-driven test and test-repair automation for legacy Perl systems: an empirical study at IBM

Automated unit test generation using Large Language Models (LLMs) has shown promise for widely used programming languages such as Java and Python. It may further benefit legacy systems lacking a test base, and the investigation of less widespread legacy languages remains relevant as many companies still operate systems...

Simon Leunig, Kai Petersen · 0 citations
Open access Sep 2026

Design and Implementation of a Static Source Code Analysis Framework for Legacy PHP Systems

Detecting software faults early is one of the most efficient methods for decreasing the cost of software development. Static source code analysis is an efficient method for this. This paper presents the design and implementation of a distributed static source code analysis platform for legacy PHP applications. The prop...

Peter Peto, Ádám Pintér · 0 citations
Sep 2026

AST-Based Automated Elimination of break and continue Statements in Java Code

This work presents the development of an automatic refactoring tool for Java code built on top of the Eclipse JDT API. The proposed approach transforms control structures containing break and continue statements within different types of loops into semantically equivalent constructs that avoid their explicit use. To ac...

Andrés Juárez, J. Chicano, Rubén Saborido · 0 citations
Book Open access Oct 2026

LLM-Based Legacy Application Re-engineering Platform: An Experience Report of Migrating a Web Application

A legacy application re-engineering platform that uses business context data and the source code of a full-stack software system to inform five LLM-based agents that creates and executes the migration plan fully autonomously by only requesting the desired target technology stack.

Sandra Greiner, Andrés Torrejón González, H. Dralle et al. · 0 citations
#software testing Preprint Sep 2026

On the Impact of Requirement Smells in LLM-Based Code Generation

The results suggest that increasing \textit{smell density} was generally associated with lower test-suite-based functional correctness, although non-smelly requirements could still produce faulty code, and motivates further investigation into task-dependent quality effects in LLM-assisted software engineering.

Hugo Villamizar, Jannik Fischbach, Mert Şahin et al. · 0 citations

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.