首页> 外文期刊>Science of Computer Programming >Domain-specific program profiling and its application to attribute grammars and term rewriting
【24h】

Domain-specific program profiling and its application to attribute grammars and term rewriting

机译:特定领域的程序分析及其在属性语法和术语重写中的应用

获取原文
获取原文并翻译 | 示例

摘要

We present a method for profiling programs that are written using domain-specific languages. Instead of reporting execution in terms of implementation details as in most existing profilers, our method operates at the level of the problem domain. Program execution generates a stream of events that summarises the execution in terms of domain concepts and operations. The events enable us to construct a hierarchical model of the execution. A flexible reporting system summarises the execution along developer-chosen model dimensions. The result is a flexible way for a developer to explore the execution of their program without requiring any knowledge of the domain-specific language implementation. These ideas are embodied in a new profiling library called dsprofile that is independent of the problem domain so it has no specific knowledge of the data and operations that are being profiled. We illustrate the utility of dsprofile by using it to profile programs that are written using our Kiama language processing library. Specifically, we instrument Kiama's attribute grammar and term rewriting domain-specific languages to use dsprofile to generate events that report on attribute evaluation and rewrite rule application. Examples of typical language processing tasks show how domain-specific profiling can help to diagnose problems in Kiama-based programs without the developer needing to know anything about how Kiama is implemented.
机译:我们提供了一种用于分析使用特定于域的语言编写的程序的方法。我们的方法没有像大多数现有的探查器中那样根据实现细节报告执行情况,而是在问题域级别上操作。程序执行生成事件流,该事件流根据域概念和操作总结执行情况。这些事件使我们能够构建执行的层次模型。灵活的报告系统根据开发人员选择的模型维度汇总执行情况。结果为开发人员提供了一种灵活的方式来探索其程序的执行,而无需了解特定于域的语言实现。这些想法体现在一个称为dsprofile的新配置文件库中,该文件库独立于问题域,因此它对所配置的数据和操作没有特定的了解。我们通过使用dsprofile来分析使用Kiama语言处理库编写的程序来说明dsprofile的实用程序。具体来说,我们通过检测Kiama的属性语法和术语重写领域特定的语言,以使用dsprofile生成事件,这些事件报告属性评估和重写规则应用程序。典型语言处理任务的示例显示了特定于域的配置文件如何帮助诊断基于Kiama的程序中的问题,而开发人员无需了解有关如何实现Kiama的任何知识。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号