{"type":"ScholarlyArticle","title":"A System which Automatically Improves Programs","authors":[{"name":"John Darlington","slug":"john-darlington","given":"John","family":"Darlington","affiliation":""},{"name":"Rod M. Burstall","slug":"rod-m-burstall","given":"Rod M.","family":"Burstall","affiliation":""}],"abstract":"We give methods of mechanically converting programs that are easy to understand into more efficient ones, converting recursion equations using high level operations into lower level flowchart programs. The main transformations involved are (i) recursion removal (ii) eliminating common subexpressions and combining loops (iii) replacing procedure calls by their bodies (iv) introducing assi~nments which overwrite list cells no longer in use tcompile-time garbage collection).","doi":null,"url":"https://ijcai.org/proceedings/1973/61","pdf":"https://ijcai.org/proceedings/1973/0061.pdf","markdown":"https://ijcai.org/proceedings/1973/61.md","bibtex":"https://ijcai.org/proceedings/1973/bibtex/61","volume":{"slug":"1973","title":"Proceedings of the Third International Joint Conference on Artificial Intelligence","short_title":"IJCAI 1973","url":"https://ijcai.org/proceedings/1973/","year":1973,"location":"Stanford, California, USA","dates":"20-23 August 1973","editors":"Nils J. Nilsson","isbn":"","publisher":"International Joint Conferences on Artificial Intelligence","doi_prefix":""},"section":"Automatic Programming","track":"Automatic Programming","number":61,"pages":{"first":479,"last":484},"keywords":[],"videos":[],"references":[],"license_note":"Copyright International Joint Conferences on Artificial Intelligence."}