SAS has been dealing with memory safety issues for its entire existence as a company going back to the 1970s. When I left a few years back, there was automated tooling being used for static and dynamic analysis, some of it mandated before code could even be pushed. Of course, these tools never catch everything because there are too many runtime scenarios to test all the edge cases and even others more common.
Rust is an excellent choice for forward thinking systems programming, and other high-performance, fault-tolerant, etc. NEW software development scenarios. Seems like one would be hard-pressed to justify the engineering economics of converting a few million lines of extremely complex Viya C code, even with automated tools. Doing so it’s just kicking the can down the road which apparently is what the last several years have been about, and a significant reason why SAS finds itself in ongoing decline.
A simple feature-by-feature, component-by-component conversion from C/C++ to Rust is incongruent with reality at this juncture in time — late 2024. It’s been a decade since CAS was designed and several architectural limitations have been identified in customer scenarios and comparisons with platforms like Spark and Snowflake.
Any effort as significant as converting the CAS/Viya core to Rust should also focus on a simplified platform, architecture from which SAS can build components and tools the market actually wants. at this point, this is probably futile because the big cloud vendors, data bricks, snowflake, and many others, including open source already provide these capabilities.
Passionate, innovative, programmers love hot new technologies and Rust satisfies this while delivering an exploding ecosystem, memory safety, and other modern capabilities. It’s downright fun to learn and used too. Just don’t see SAS moving forward with it on massive scale unless JG wants to invest a serious amount of his fortune into completely remodeling the company! if so, there are probably better ways to go about it through acquisitions Instead of the “must be invented here” that has markedly contributed to SAS’ decline.