LMS公司 swMATH ID: 19986 软件作者: 蒂亚克·隆普夫(Tiark Rompf),马丁·奥德斯基(Martin Odersky) 描述: 轻量级模块化登台:一种实用的运行时代码生成和编译DSL方法。良好的软件工程实践要求泛化和抽象,而高性能要求专业化和具体化。这些目标并不一致,编译器很少能以充分利用可用资源的方式将富有表现力的高级程序翻译成现代硬件平台。生成性编程是全自动翻译的一个很有前途的替代方案。开发人员不直接写下目标程序,而是编写一个程序生成器,生成目标程序作为其输出。生成器可以用高级通用样式编写,并且仍然可以生成高效的专用目标程序。然而,在实践中,开发高质量的程序生成器需要付出很大的努力,而且往往很难摊销。我们提出了轻量级模块化分段(LMS),这是一种生成性编程方法,大大降低了这一工作量。LMS将程序生成器逻辑与生成的代码无缝地结合在单个程序中,只使用类型来区分两个执行阶段。通过广泛使用组件技术,LMS在库级别提供了一个可重用和可扩展的编译器框架,允许程序员将特定于域的抽象和优化紧密集成到生成过程中,并使用该框架提供的通用优化。LMS非常适合开发嵌入式领域特定语言(DSL),并已用于为机器学习等要求严格的领域开发功能强大的面向性能的DSL,以及为包括GPU在内的异构平台生成代码。LMS还用于为嵌入式数据库查询生成SQL,为web应用程序生成JavaScript。 主页: http://dl.acm.org/citation.cfm?id=2184345 相关软件: TMB公司;PyMC公司;斯坦;spBayes公司;教堂;AD模型生成器;卡爪;漏洞;ADMB公司;贝叶斯X;艾根;lme4公司;WinBUGS公司;博客;R(右);科卡;PLT兑换;K工具;K校准仪;OCaml公司 引用于: 5文件 全部的 前5名13位作者引用 1 巴赫·鲍尔森,卡斯珀 1 关志超 1 胡镇江 1 Jun-Ichiro井上 1 奥列格·基塞利约夫 1 约翰内斯·鲁道夫 1 汤姆·施里杰弗斯 1 瓦利德·塔哈 1 彼得·蒂曼。 1 范登伯格,比尔特 1 尼古拉斯·吴 1 肖玉硕 1 杨子怡 2篇连载文章中引用 1 函数编程杂志 1 高阶与符号计算 在1个字段中引用 5 计算机科学(68至XX) 按年份列出的引文