{"title":"面向对象语言中的无副作用函数","authors":"Roberto Ierusalimschy, Noemi Rodriguez","doi":"10.1016/0096-0551(95)00008-9","DOIUrl":null,"url":null,"abstract":"<div><p>This paper presents a method for statically verifying that functions do not produce side-effects, in an object-oriented language. The described model, although not allowing any changes to pre-existing objects during a function call, permits an imperative style of programming, where new objects can be freely created and manipulated.</p></div>","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"21 3","pages":"Pages 129-146"},"PeriodicalIF":0.0000,"publicationDate":"1995-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/0096-0551(95)00008-9","citationCount":"8","resultStr":"{\"title\":\"Side-effect free functions in object-oriented languages\",\"authors\":\"Roberto Ierusalimschy, Noemi Rodriguez\",\"doi\":\"10.1016/0096-0551(95)00008-9\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><p>This paper presents a method for statically verifying that functions do not produce side-effects, in an object-oriented language. The described model, although not allowing any changes to pre-existing objects during a function call, permits an imperative style of programming, where new objects can be freely created and manipulated.</p></div>\",\"PeriodicalId\":100315,\"journal\":{\"name\":\"Computer Languages\",\"volume\":\"21 3\",\"pages\":\"Pages 129-146\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1995-10-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"https://sci-hub-pdf.com/10.1016/0096-0551(95)00008-9\",\"citationCount\":\"8\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Computer Languages\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/0096055195000089\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computer Languages","FirstCategoryId":"1085","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/0096055195000089","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Side-effect free functions in object-oriented languages
This paper presents a method for statically verifying that functions do not produce side-effects, in an object-oriented language. The described model, although not allowing any changes to pre-existing objects during a function call, permits an imperative style of programming, where new objects can be freely created and manipulated.