Richard H. Crawford, Ronald A. Olsson, W.Wilson Ho, Christopher E. Wee
{"title":"调试语言设计中的语义问题","authors":"Richard H. Crawford, Ronald A. Olsson, W.Wilson Ho, Christopher E. Wee","doi":"10.1016/0096-0551(94)00015-I","DOIUrl":null,"url":null,"abstract":"<div><p>The design of debugging tools is often <em>ad hoc</em>, with tools tailor-made for specific target languages and operating systems. Consequently, no unified theory of debugger design has emerged. Especially neglected is the design of languages to control debugging activities—and fundamental issues that arise in the implementation and use of such languages. We introduce GDL, a powerful low-level debugging language whose primitives capture the intuitive, informal semantics used in imperative debugging. GDL can be extended to incorporate higher-level constructs, hence we use it as our vehicle to examine central semantic issues that confront designers and implementors of debugging languages.</p><p>We gauge the efficiency of various GDL constructs on typical architectures and highlight semantic issues arising from the integration of those mechanisms. Our exploration of semantic issues is intended to provide guidance for designers of debugging languages, to ensure all high-level language features can be mapped cleanly and efficiently onto underlying architectural hooks, without endangering the semantic integrity of those high-level constructs.</p></div>","PeriodicalId":100315,"journal":{"name":"Computer Languages","volume":"21 1","pages":"Pages 17-37"},"PeriodicalIF":0.0000,"publicationDate":"1995-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/0096-0551(94)00015-I","citationCount":"0","resultStr":"{\"title\":\"Semantic issues in the design of languages for debugging\",\"authors\":\"Richard H. Crawford, Ronald A. Olsson, W.Wilson Ho, Christopher E. Wee\",\"doi\":\"10.1016/0096-0551(94)00015-I\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><p>The design of debugging tools is often <em>ad hoc</em>, with tools tailor-made for specific target languages and operating systems. Consequently, no unified theory of debugger design has emerged. Especially neglected is the design of languages to control debugging activities—and fundamental issues that arise in the implementation and use of such languages. We introduce GDL, a powerful low-level debugging language whose primitives capture the intuitive, informal semantics used in imperative debugging. GDL can be extended to incorporate higher-level constructs, hence we use it as our vehicle to examine central semantic issues that confront designers and implementors of debugging languages.</p><p>We gauge the efficiency of various GDL constructs on typical architectures and highlight semantic issues arising from the integration of those mechanisms. Our exploration of semantic issues is intended to provide guidance for designers of debugging languages, to ensure all high-level language features can be mapped cleanly and efficiently onto underlying architectural hooks, without endangering the semantic integrity of those high-level constructs.</p></div>\",\"PeriodicalId\":100315,\"journal\":{\"name\":\"Computer Languages\",\"volume\":\"21 1\",\"pages\":\"Pages 17-37\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1995-04-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"https://sci-hub-pdf.com/10.1016/0096-0551(94)00015-I\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Computer Languages\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/009605519400015I\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computer Languages","FirstCategoryId":"1085","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/009605519400015I","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Semantic issues in the design of languages for debugging
The design of debugging tools is often ad hoc, with tools tailor-made for specific target languages and operating systems. Consequently, no unified theory of debugger design has emerged. Especially neglected is the design of languages to control debugging activities—and fundamental issues that arise in the implementation and use of such languages. We introduce GDL, a powerful low-level debugging language whose primitives capture the intuitive, informal semantics used in imperative debugging. GDL can be extended to incorporate higher-level constructs, hence we use it as our vehicle to examine central semantic issues that confront designers and implementors of debugging languages.
We gauge the efficiency of various GDL constructs on typical architectures and highlight semantic issues arising from the integration of those mechanisms. Our exploration of semantic issues is intended to provide guidance for designers of debugging languages, to ensure all high-level language features can be mapped cleanly and efficiently onto underlying architectural hooks, without endangering the semantic integrity of those high-level constructs.