升级多维对象的CLOS继承机制

Henry J. Borron
{"title":"升级多维对象的CLOS继承机制","authors":"Henry J. Borron","doi":"10.1109/TOOLS.1997.681878","DOIUrl":null,"url":null,"abstract":"The paper generalizes the linearization technique known in Lisp-based languages to multidimensional objects. A general principle is defined and applied to memory representations and methods. Linearization is done on a dimension-per-dimension basis. Such application, simplified in the case of representations, has to be complemented in the case of methods, first by a condition verified in practice and secondly by a rule, quite simple to apply. Combinations become purely declarative, with no further need for the OOP classical imperative anti-modular send-super construct (fall-next-method in CLOS, super in Smalltalk). Quite sophisticated combination methods with multiple roles as done in CLOS are supported. Multiple dispatch is also supported. This paper also looks at the desirable properties of a linearization algorithm fit for use in this context. Besides stability and monotonicity, already known, a third property is brought into light. Because it conflicts with monotonicity, a refined study was conducted: the paper proposes three candidate solutions, and selects the best compromise.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"58 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Upscaling the CLOS inheritance mechanism for multidimensional objects\",\"authors\":\"Henry J. Borron\",\"doi\":\"10.1109/TOOLS.1997.681878\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The paper generalizes the linearization technique known in Lisp-based languages to multidimensional objects. A general principle is defined and applied to memory representations and methods. Linearization is done on a dimension-per-dimension basis. Such application, simplified in the case of representations, has to be complemented in the case of methods, first by a condition verified in practice and secondly by a rule, quite simple to apply. Combinations become purely declarative, with no further need for the OOP classical imperative anti-modular send-super construct (fall-next-method in CLOS, super in Smalltalk). Quite sophisticated combination methods with multiple roles as done in CLOS are supported. Multiple dispatch is also supported. This paper also looks at the desirable properties of a linearization algorithm fit for use in this context. Besides stability and monotonicity, already known, a third property is brought into light. Because it conflicts with monotonicity, a refined study was conducted: the paper proposes three candidate solutions, and selects the best compromise.\",\"PeriodicalId\":276758,\"journal\":{\"name\":\"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)\",\"volume\":\"58 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1997-11-24\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/TOOLS.1997.681878\",\"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. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/TOOLS.1997.681878","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

本文将基于lisp语言的线性化技术推广到多维对象。定义了一个通用原则,并将其应用于内存表示和方法。线性化是在每维的基础上进行的。这种适用,在表述的情况下得到简化,在方法的情况下必须加以补充,首先要有一个在实践中得到证实的条件,其次要有一个适用起来相当简单的规则。组合变成了纯粹的声明性,不再需要OOP经典的命使式反模块化send-super构造(CLOS中的fall-next-method, Smalltalk中的super)。支持在CLOS中完成的具有多个角色的相当复杂的组合方法。还支持多个分派。本文还研究了适合在这种情况下使用的线性化算法的理想性质。除了已知的稳定性和单调性之外,第三个特性也被揭示出来。由于其与单调性相冲突,本文进行了细化研究,提出了三种候选解,并选择了最佳折衷方案。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Upscaling the CLOS inheritance mechanism for multidimensional objects
The paper generalizes the linearization technique known in Lisp-based languages to multidimensional objects. A general principle is defined and applied to memory representations and methods. Linearization is done on a dimension-per-dimension basis. Such application, simplified in the case of representations, has to be complemented in the case of methods, first by a condition verified in practice and secondly by a rule, quite simple to apply. Combinations become purely declarative, with no further need for the OOP classical imperative anti-modular send-super construct (fall-next-method in CLOS, super in Smalltalk). Quite sophisticated combination methods with multiple roles as done in CLOS are supported. Multiple dispatch is also supported. This paper also looks at the desirable properties of a linearization algorithm fit for use in this context. Besides stability and monotonicity, already known, a third property is brought into light. Because it conflicts with monotonicity, a refined study was conducted: the paper proposes three candidate solutions, and selects the best compromise.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信