以风格生成事件

摘要:将线程和事件作为写并发程序的两种常见的抽象。由于线程通常更方便,但事件更高效,所以自然希望将前者转换为后者。然而,现有的转换器通常应用特定的规则,这些规则并没有反映出这种多样性。我们分析了现实世界中事件驱动代码中的各种控制流和数据流编码,并观察到通过应用某些精心选择的经典程序转换,可以自动从线程化代码中生成任何一种风格。特别是,我们在CPC中实现了两种这些转换,即lambda提升和环境,CPC是用于编写并发系统的C语言扩展。最后,我们发现,尽管在现实世界的程序中很少被使用,因为手动执行很繁琐,但在我们的大多数基准测试中,lambda提升比环境提供更好的性能。

作者:Matthieu Boutier (PPS), Gabriel Kerneis (PPS)

论文ID:1210.4263

分类:Programming Languages

分类简称:cs.PL

提交时间:2012-10-18

PDF 下载: 英文版 中文版pdf翻译中