A polymorphic reference counting implementation in Fortran 2003

Michael List, David Car
{"title":"A polymorphic reference counting implementation in Fortran 2003","authors":"Michael List, David Car","doi":"10.1145/2007333.2007334","DOIUrl":null,"url":null,"abstract":"This paper outlines a revised reference counting programming pattern for derived types in Fortran 2003. It extends the method described by Car [1] to work with polymorphic types (i.e. using the class keyword). This reference counting pattern reduces the possibility of memory leaks by allowing the object itself to manage allocations and deallocations. It follows the pattern found in many modern object oriented languages like Java [2,3] and Python[4,5] and the auto_ptr template class in C++ [6]. The reference counting pattern described here is being used in conjunction with the PyF95++ pre-processor [7,8] and the accompanying Standard Template Library (STL). All the containers in that project are reference counted and employ the original pattern for derived types. Some of the intricacies of working with polymorphic types in Fortran are described as the implementation is discussed.","PeriodicalId":379614,"journal":{"name":"ACM SIGPLAN Fortran Forum","volume":"58 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-07-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACM SIGPLAN Fortran Forum","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2007333.2007334","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

Abstract

This paper outlines a revised reference counting programming pattern for derived types in Fortran 2003. It extends the method described by Car [1] to work with polymorphic types (i.e. using the class keyword). This reference counting pattern reduces the possibility of memory leaks by allowing the object itself to manage allocations and deallocations. It follows the pattern found in many modern object oriented languages like Java [2,3] and Python[4,5] and the auto_ptr template class in C++ [6]. The reference counting pattern described here is being used in conjunction with the PyF95++ pre-processor [7,8] and the accompanying Standard Template Library (STL). All the containers in that project are reference counted and employ the original pattern for derived types. Some of the intricacies of working with polymorphic types in Fortran are described as the implementation is discussed.
一个多态引用计数在Fortran 2003中的实现
本文概述了Fortran 2003中派生类型的一个修订的引用计数编程模式。它扩展了Car[1]描述的方法来处理多态类型(即使用class关键字)。这种引用计数模式允许对象自己管理分配和释放,从而减少了内存泄漏的可能性。它遵循许多现代面向对象语言的模式,如Java[2,3]和Python[4,5],以及c++[6]中的auto_ptr模板类。这里描述的引用计数模式与pyf95++预处理器[7,8]和附带的标准模板库(STL)一起使用。该项目中的所有容器都是引用计数的,并为派生类型使用原始模式。在讨论实现时,描述了在Fortran中处理多态类型的一些复杂性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
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学术文献互助群
群 号:481959085
Book学术官方微信