Type-Based Analysis of Communication for Concurrent Programming Languages
Type-Based Analysis of Communication for Concurrent Programming Languages
复制标题
并发编程语言的基于类型的通信分析
DOI:
--
复制
发表时间:
1997
期刊:
影响因子:
--
通讯作者:
N. Kobayashi
中科院分区:
文献类型:
--
作者:
Atsushi Igarashi;N. Kobayashi
Powerful concurrency primitives in recent concurrent languages and thread libraries provide the great flexibility about implementation of high-level features like concurrent objects. However, they are so low-level that they often make it difficult to check global correctness of programs or to perform aggressive code optimization. We propose a static analysis method for inferring how many times each communication channel is used during execution of concurrent programs: a type system that is sensitive to usage information is constructed for this purpose and a type reconstruction algorithm is developed. Our analysis can, in particular, automatically detect linear channels (communication channels used just once): as studied by Kobayashi, Pierce, and Turner, they are very useful for reasoning about program behavior and aggressive code optimization. Our analysis has already been implemented and applied to the compiler of a concurrent language HACL; we present the results of simple benchmarks to show performance improvement gained by our analysis.