Graded monads and type-level programming for dependence analysis

Graded monads and type-level programming for dependence analysis
复制标题

用于依赖性分析的分级单子和类型级编程

DOI:
10.1145/3471874.3472981
复制
发表时间:
2021
期刊:
--
影响因子:
--
通讯作者:
Keating F
Keating F
中科院分区:
--
文献类型:
--
作者:
Keating F

文献摘要

参考文献

相似文献

程序员对内存操作的顺序做出假设,这些假设没有在操作的类型中捕获,因此不能由编译器静态地强制执行。如果程序员不小心,这可能会导致他们意外地违反这些假设。为了解决这个问题,我们使用分级单子对给定计算访问的内存位置进行编码。我们使用由此产生的数据流依赖关系来构建一个类型级别的图,我们分析该图以自动排序计算,从而不会违反任何依赖关系。这也允许并行地运行彼此没有依赖性的计算。
Programmers make assumptions about the order of memory operations, which are not captured in the operations' types and therefore cannot be enforced statically by a compiler. This can lead programmers to accidentally violate those assumptions if they are not careful. To address this issue, we encode the memory locations that are accessed by a given computation using a graded monad. We use the data flow dependencies which arise from this to construct a type-level graph that we analyse to automatically order the computations so that no dependencies are violated. This also allows for computations which have no dependencies on each other to be run concurrently.
使用 Servant 的类型级 Web API:特定领域通用编程的练习
DOI: --
发表时间: 2015
期刊: WGP@ICFP
影响因子: --
作者:
Alp Mestanogullari;Sönke Hahn;Julian K. Arni;Andres Löh
通讯作者: Andres Löh
DOI: 10.1145/2535838.2535856
发表时间: 2014
期刊: Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
影响因子: --
作者:
R. Eisenberg;Dimitrios Vytiniotis;Simon Peyton Jones;Stephanie Weirich
通讯作者: Stephanie Weirich
类型函数的乐趣
DOI: 10.1007/978-1-84882-912-1_14
发表时间: 2010
影响因子: 6.2
作者:
O. Kiselyov;S. Jones;Chung
通讯作者: Chung
函数式反应式编程,重述
DOI: --
发表时间: 2019
期刊: ACM-SIGPLAN International Conference on Principles and Practice of Declarative Programming
影响因子: --
作者:
Guerric Chupin;H. Nilsson
通讯作者: H. Nilsson
用于无死锁并发的分级 monad(功能性珍珠)
DOI: --
发表时间: 2020
期刊: Haskell@ICFP
影响因子: --
作者:
Andrej Ivaskovic;A. Mycroft
通讯作者: A. Mycroft