Journal of Systems Architecture ( IF 4.5 ) Pub Date : 2021-02-13 , DOI: 10.1016/j.sysarc.2021.102039 Alejandro R. Mosteo , María-Teresa Lorente
Functional-style iterators are present in many popular languages as a way of processing data in several connected steps, in a safe and readable manner. By contrast, Ada started providing general iterators only with its 2012 revision, in a way not directly intended for sequential composition. This paper presents a functional iterators library design inspired by the standard Rust iterators and the RxAda reactive extensions. This library is used as a case study for the limitations in implementing higher-kinded types in current Ada, and how currently proposed extensions for the 202X revision might change the situation.
中文翻译:
使用函数式迭代器探索Ada语法的边界
功能样式迭代器以多种安全的可读方式,以多种连接的步骤处理数据的方式,以多种流行语言提供。相比之下,Ada仅在其2012年修订版中才开始提供通用迭代器,而这种方式并非直接用于顺序合成。本文介绍了受标准Rust迭代器和RxAda反应性扩展启发的功能迭代器库设计。该库用作案例研究,以了解在当前Ada中实现更高种类的类型的局限性,以及当前为202X修订版提议的扩展如何改变这种情况。