programtransformasjon
Programtransformasjon er en disiplin innen datavitenskap og programvareutvikling som handler om å endre et program til et annet uttrykk samtidig som dets semantikk i prinsippet bevares. Målet kan være å forbedre ytelse, redusere ressursbruk, øke portabilitet, gjøre koden lettere å vedlikeholde eller bedre egnet for formell analyse og verifikasjon. Transformasjonen kan foregå på ulike nivåer, fra kildekode til mellomrepresentasjoner i en kompilator, og videre til modellbaserte eller metaprogrammeringstilnærminger.
Omfang og tilnærminger. Programtransformasjon dekker både program-til-program-transformasjoner (source-to-source) og transformasjoner som skjer under kompilering eller kjøring.
Typer anvendelser. Transformasjoner brukes i kompilatorer for målrettet optimalisering og artifaktoversettelse, i programvaremodernisering og portabilitetsarbeid, i
Utfordringer. Hovedutfordringer inkluderer å sikre semantisk korreksjon, terminering og sporing av effekter, samt å håndtere kompleksitet