I am very excited about this research problem! Feels like many pieces required to make it workable, but all the pieces are out there.
Imagine, Friday you identify a bug, write a test to exemplify the bug. Some ML/AI-based approach generates a ballpark fix for a bug, maybe it doesn't compile or actually fix the bug, but at least it contains all the ingredients required to fix. Then some trial-and-error (e.g. Genetic Programming) algorithm is used to search through many variants to find a combination that is a correct fix. All of this deployed as part of CI/CD. Morning morning you have a nice patch to review. And also, the patch is also the most performant out of a number of fixes found.
Anything about software that is measurable can be optimized, possibly even security considerations as mentioned in another comment.
People interested in program repair and related topics may also check out this episode of the Haskell Interlude podcast: https://haskell.foundation/podcast/18/
Full disclaimer, Matthias is a colleague of mine :)
Of course. It's a tool, can be used for both good and bad, just like any other tool.
And it started at least a decade ago. What do you think crackers for RDR2 used to test their in-house social network in order to bypass Rockstar game protection?
I'm curious to know if compiler exposes internal API for external client to listen to its events ? The purpose might be useful for data mining and learning.
Imagine, Friday you identify a bug, write a test to exemplify the bug. Some ML/AI-based approach generates a ballpark fix for a bug, maybe it doesn't compile or actually fix the bug, but at least it contains all the ingredients required to fix. Then some trial-and-error (e.g. Genetic Programming) algorithm is used to search through many variants to find a combination that is a correct fix. All of this deployed as part of CI/CD. Morning morning you have a nice patch to review. And also, the patch is also the most performant out of a number of fixes found.
Anything about software that is measurable can be optimized, possibly even security considerations as mentioned in another comment.