Static slicing in the presence of goto statements

A static program slice is an extract of a program which can help our understanding of the behavior of the program; it has been proposed for use in debugging, optimization, parallelization, and integration of programs. This article considers two types of static slices: executable and nonexecutable. E...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on programming languages and systems 1994-07, Vol.16 (4), p.1097-1113
Hauptverfasser: Choi, Jong-Deok, Ferrante, Jeanne
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 1113
container_issue 4
container_start_page 1097
container_title ACM transactions on programming languages and systems
container_volume 16
creator Choi, Jong-Deok
Ferrante, Jeanne
description A static program slice is an extract of a program which can help our understanding of the behavior of the program; it has been proposed for use in debugging, optimization, parallelization, and integration of programs. This article considers two types of static slices: executable and nonexecutable. Efficient and well-founded methods have been developed to construct executable slices for programs without goto statements; it would be tempting to assume these methods would apply as well in programs with arbitrary goto statements. We show why previous methods do not work in this more general setting, and describe our solutions that correctly and efficiently compute executable slices for programs even with arbitrary goto statements. Our conclusion is that goto statements can be accommodated in generating executable static slices.
doi_str_mv 10.1145/183432.183438
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_29062853</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>26608564</sourcerecordid><originalsourceid>FETCH-LOGICAL-a354t-e49a549b36818e06d0dac2e94930f9b3343db1a14abd990ba28e9096e62b9333</originalsourceid><addsrcrecordid>eNqN0D1LBDEQBuAgCq6npYVdKruck0-SUg71hAMLr1-y2dkzsl9ucoX_3tUVbK1emHkYhpeQaw5rzpW-41YqKdY_YU9IwbW2TGknT0kB3CgGTuhzcpHSOwBwq21B-Gv2OQaa2hhif6Cxp_kN6Thhwj4gHRp6GPJA08ywwz6nS3LW-Dbh1W-uyP7xYb_Zst3L0_Pmfse81CozVM5r5SppLLcIpobaB4FOOQnNPJ5_rCvuufJV7RxUXlh04AwaUTkp5YrcLmfHafg4YsplF1PAtvU9DsdUCgdGWP0PaAxYbdQM2QLDNKQ0YVOOU-z89FlyKL8LLJcCl7Czv1m8D90fXXZf9A5pLA</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>26608564</pqid></control><display><type>article</type><title>Static slicing in the presence of goto statements</title><source>ACM Digital Library Complete</source><creator>Choi, Jong-Deok ; Ferrante, Jeanne</creator><creatorcontrib>Choi, Jong-Deok ; Ferrante, Jeanne</creatorcontrib><description>A static program slice is an extract of a program which can help our understanding of the behavior of the program; it has been proposed for use in debugging, optimization, parallelization, and integration of programs. This article considers two types of static slices: executable and nonexecutable. Efficient and well-founded methods have been developed to construct executable slices for programs without goto statements; it would be tempting to assume these methods would apply as well in programs with arbitrary goto statements. We show why previous methods do not work in this more general setting, and describe our solutions that correctly and efficiently compute executable slices for programs even with arbitrary goto statements. Our conclusion is that goto statements can be accommodated in generating executable static slices.</description><identifier>ISSN: 0164-0925</identifier><identifier>EISSN: 1558-4593</identifier><identifier>DOI: 10.1145/183432.183438</identifier><language>eng</language><publisher>New York, NY, USA: ACM</publisher><subject>Development frameworks and environments ; Software and its engineering ; Software creation and management ; Software defect analysis ; Software notations and tools ; Software testing and debugging ; Software verification and validation</subject><ispartof>ACM transactions on programming languages and systems, 1994-07, Vol.16 (4), p.1097-1113</ispartof><rights>ACM</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-a354t-e49a549b36818e06d0dac2e94930f9b3343db1a14abd990ba28e9096e62b9333</citedby><cites>FETCH-LOGICAL-a354t-e49a549b36818e06d0dac2e94930f9b3343db1a14abd990ba28e9096e62b9333</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktopdf>$$Uhttps://dl.acm.org/doi/pdf/10.1145/183432.183438$$EPDF$$P50$$Gacm$$H</linktopdf><link.rule.ids>314,780,784,2282,27924,27925,40196,76228</link.rule.ids></links><search><creatorcontrib>Choi, Jong-Deok</creatorcontrib><creatorcontrib>Ferrante, Jeanne</creatorcontrib><title>Static slicing in the presence of goto statements</title><title>ACM transactions on programming languages and systems</title><addtitle>ACM TOPLAS</addtitle><description>A static program slice is an extract of a program which can help our understanding of the behavior of the program; it has been proposed for use in debugging, optimization, parallelization, and integration of programs. This article considers two types of static slices: executable and nonexecutable. Efficient and well-founded methods have been developed to construct executable slices for programs without goto statements; it would be tempting to assume these methods would apply as well in programs with arbitrary goto statements. We show why previous methods do not work in this more general setting, and describe our solutions that correctly and efficiently compute executable slices for programs even with arbitrary goto statements. Our conclusion is that goto statements can be accommodated in generating executable static slices.</description><subject>Development frameworks and environments</subject><subject>Software and its engineering</subject><subject>Software creation and management</subject><subject>Software defect analysis</subject><subject>Software notations and tools</subject><subject>Software testing and debugging</subject><subject>Software verification and validation</subject><issn>0164-0925</issn><issn>1558-4593</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>1994</creationdate><recordtype>article</recordtype><recordid>eNqN0D1LBDEQBuAgCq6npYVdKruck0-SUg71hAMLr1-y2dkzsl9ucoX_3tUVbK1emHkYhpeQaw5rzpW-41YqKdY_YU9IwbW2TGknT0kB3CgGTuhzcpHSOwBwq21B-Gv2OQaa2hhif6Cxp_kN6Thhwj4gHRp6GPJA08ywwz6nS3LW-Dbh1W-uyP7xYb_Zst3L0_Pmfse81CozVM5r5SppLLcIpobaB4FOOQnNPJ5_rCvuufJV7RxUXlh04AwaUTkp5YrcLmfHafg4YsplF1PAtvU9DsdUCgdGWP0PaAxYbdQM2QLDNKQ0YVOOU-z89FlyKL8LLJcCl7Czv1m8D90fXXZf9A5pLA</recordid><startdate>19940701</startdate><enddate>19940701</enddate><creator>Choi, Jong-Deok</creator><creator>Ferrante, Jeanne</creator><general>ACM</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>19940701</creationdate><title>Static slicing in the presence of goto statements</title><author>Choi, Jong-Deok ; Ferrante, Jeanne</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a354t-e49a549b36818e06d0dac2e94930f9b3343db1a14abd990ba28e9096e62b9333</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>1994</creationdate><topic>Development frameworks and environments</topic><topic>Software and its engineering</topic><topic>Software creation and management</topic><topic>Software defect analysis</topic><topic>Software notations and tools</topic><topic>Software testing and debugging</topic><topic>Software verification and validation</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Choi, Jong-Deok</creatorcontrib><creatorcontrib>Ferrante, Jeanne</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>ACM transactions on programming languages and systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Choi, Jong-Deok</au><au>Ferrante, Jeanne</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Static slicing in the presence of goto statements</atitle><jtitle>ACM transactions on programming languages and systems</jtitle><stitle>ACM TOPLAS</stitle><date>1994-07-01</date><risdate>1994</risdate><volume>16</volume><issue>4</issue><spage>1097</spage><epage>1113</epage><pages>1097-1113</pages><issn>0164-0925</issn><eissn>1558-4593</eissn><abstract>A static program slice is an extract of a program which can help our understanding of the behavior of the program; it has been proposed for use in debugging, optimization, parallelization, and integration of programs. This article considers two types of static slices: executable and nonexecutable. Efficient and well-founded methods have been developed to construct executable slices for programs without goto statements; it would be tempting to assume these methods would apply as well in programs with arbitrary goto statements. We show why previous methods do not work in this more general setting, and describe our solutions that correctly and efficiently compute executable slices for programs even with arbitrary goto statements. Our conclusion is that goto statements can be accommodated in generating executable static slices.</abstract><cop>New York, NY, USA</cop><pub>ACM</pub><doi>10.1145/183432.183438</doi><tpages>17</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 0164-0925
ispartof ACM transactions on programming languages and systems, 1994-07, Vol.16 (4), p.1097-1113
issn 0164-0925
1558-4593
language eng
recordid cdi_proquest_miscellaneous_29062853
source ACM Digital Library Complete
subjects Development frameworks and environments
Software and its engineering
Software creation and management
Software defect analysis
Software notations and tools
Software testing and debugging
Software verification and validation
title Static slicing in the presence of goto statements
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-05T14%3A06%3A57IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Static%20slicing%20in%20the%20presence%20of%20goto%20statements&rft.jtitle=ACM%20transactions%20on%20programming%20languages%20and%20systems&rft.au=Choi,%20Jong-Deok&rft.date=1994-07-01&rft.volume=16&rft.issue=4&rft.spage=1097&rft.epage=1113&rft.pages=1097-1113&rft.issn=0164-0925&rft.eissn=1558-4593&rft_id=info:doi/10.1145/183432.183438&rft_dat=%3Cproquest_cross%3E26608564%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=26608564&rft_id=info:pmid/&rfr_iscdi=true