首页> 外文会议>ACM SIGPLAN-SIGACT symposium on Principles of programming languages >Generating a compiler for a lazy language by partial evaluation
【24h】

Generating a compiler for a lazy language by partial evaluation

机译:通过部分评估为惰性语言生成编译器

获取原文

摘要

Compiler generation is often emphasized as being the most important application of partial evaluation. But most of the larger practical applications have, to the best of our knowledge, been outside this field. Expecially, no one has generated compilers for languages other than small languages. This paper describes a large application of partial evaluation where a realistic compiler was generated for a strongly typed lazy functional language. The language, that was called BAWL, was modeled after the language in Bird and Wadler [BW88] and is a combinator language with pattern matching, guarded alternatives, local definitions and list comprehensions. The paper describes the most important techniques used, especially the binding time improvements needed in order to get small and efficient target programs. Finally, the performance of the compiler is compared with two compilers for similar languages: Miranda and LML.

机译:

编译器生成通常被认为是部分评估的最重要应用。但是,就我们所知,大多数较大的实际应用程序不在此领域之内。特别是,除了小语言以外,没有人为其他语言生成过编译器。本文描述了局部评估的一个大型应用,其中为强类型化的惰性函数语言生成了一个实际的编译器。该语言称为BAWL,是根据Bird and Wadler [BW88]中的语言建模而成的,是一种具有模式匹配,受保护的替代方案,局部定义和列表理解的组合语言。本文介绍了最重要的技术,尤其是为了获得小型高效的目标程序而需要改进的绑定时间。最后,将编译器的性能与两种类似语言的编译器进行比较:Miranda和LML。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号