{"title":"SPiCE:一个将Smalltalk程序翻译成C环境的系统","authors":"Kazuki Yasumatsu, N. Doi","doi":"10.1109/ICCL.1994.288388","DOIUrl":null,"url":null,"abstract":"Smalltalk-80 is very well suited for prototyping of applications, but it is less well suited for delivering applications because applications can neither run in isolation from the Smalltalk environment nor be combined with other programs written in other languages. By translating Smalltalk into C while preserving the semantics of Smalltalk, it is possible to deliver a standalone version of Smalltalk applications, and to develop an application partly in Smalltalk and partly in C. We have implemented SPiCE (Smalltalk-Programs-into-C Environment), which is a system for translating Smalltalk into C. Our approach to the translation is, first, to create the runtime replacement classes which implement the same functionality of the Smalltalk classes that are inherently part of the Smalltalk execution model, and secondly, to provide real-time compacting garbage collection which works without language supports. This paper presents our techniques for the translation and the runtime, and some measures of the performance of the translated C code.<<ETX>>","PeriodicalId":137441,"journal":{"name":"Proceedings of 1994 IEEE International Conference on Computer Languages (ICCL'94)","volume":"8 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1994-05-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"34","resultStr":"{\"title\":\"SPiCE: a system for translating Smalltalk programs into a C environment\",\"authors\":\"Kazuki Yasumatsu, N. Doi\",\"doi\":\"10.1109/ICCL.1994.288388\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Smalltalk-80 is very well suited for prototyping of applications, but it is less well suited for delivering applications because applications can neither run in isolation from the Smalltalk environment nor be combined with other programs written in other languages. By translating Smalltalk into C while preserving the semantics of Smalltalk, it is possible to deliver a standalone version of Smalltalk applications, and to develop an application partly in Smalltalk and partly in C. We have implemented SPiCE (Smalltalk-Programs-into-C Environment), which is a system for translating Smalltalk into C. Our approach to the translation is, first, to create the runtime replacement classes which implement the same functionality of the Smalltalk classes that are inherently part of the Smalltalk execution model, and secondly, to provide real-time compacting garbage collection which works without language supports. This paper presents our techniques for the translation and the runtime, and some measures of the performance of the translated C code.<<ETX>>\",\"PeriodicalId\":137441,\"journal\":{\"name\":\"Proceedings of 1994 IEEE International Conference on Computer Languages (ICCL'94)\",\"volume\":\"8 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1994-05-16\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"34\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of 1994 IEEE International Conference on Computer Languages (ICCL'94)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICCL.1994.288388\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of 1994 IEEE International Conference on Computer Languages (ICCL'94)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICCL.1994.288388","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
SPiCE: a system for translating Smalltalk programs into a C environment
Smalltalk-80 is very well suited for prototyping of applications, but it is less well suited for delivering applications because applications can neither run in isolation from the Smalltalk environment nor be combined with other programs written in other languages. By translating Smalltalk into C while preserving the semantics of Smalltalk, it is possible to deliver a standalone version of Smalltalk applications, and to develop an application partly in Smalltalk and partly in C. We have implemented SPiCE (Smalltalk-Programs-into-C Environment), which is a system for translating Smalltalk into C. Our approach to the translation is, first, to create the runtime replacement classes which implement the same functionality of the Smalltalk classes that are inherently part of the Smalltalk execution model, and secondly, to provide real-time compacting garbage collection which works without language supports. This paper presents our techniques for the translation and the runtime, and some measures of the performance of the translated C code.<>