{"links":{},"metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00213900","sets":["934:935:10452:10726"]},"path":["10726"],"owner":"44499","recid":"213900","title":["Verifying the Confluence of GHC Rewrite Rules"],"pubdate":{"attribute_name":"公開日","attribute_value":"2021-11-25"},"_buckets":{"deposit":"90bf0384-4d4e-482b-9cc1-a5f611309272"},"_deposit":{"id":"213900","pid":{"type":"depid","value":"213900","revision_id":0},"owners":[44499],"status":"published","created_by":44499},"item_title":"Verifying the Confluence of GHC Rewrite Rules","author_link":["547838","547841","547839","547840"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"Verifying the Confluence of GHC Rewrite Rules"},{"subitem_title":"Verifying the Confluence of GHC Rewrite Rules","subitem_title_language":"en"}]},"item_keyword":{"attribute_name":"キーワード","attribute_value_mlt":[{"subitem_subject":"[発表概要, Unrefereed Presentatin Abstract] ","subitem_subject_scheme":"Other"}]},"item_type_id":"3","publish_date":"2021-11-25","item_3_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"Department of Computer Science, Gunma University"},{"subitem_text_value":"Faculty of Informatics, Gunma University"}]},"item_3_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"Department of Computer Science, Gunma University","subitem_text_language":"en"},{"subitem_text_value":"Faculty of Informatics, Gunma University","subitem_text_language":"en"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"eng"}]},"item_publisher":{"attribute_name":"出版者","attribute_value_mlt":[{"subitem_publisher":"情報処理学会","subitem_publisher_language":"ja"}]},"publish_status":"0","weko_shared_id":-1,"item_file_price":{"attribute_name":"Billing file","attribute_type":"file","attribute_value_mlt":[{"url":{"url":"https://ipsj.ixsq.nii.ac.jp/record/213900/files/IPSJ-TPRO1405007.pdf","label":"IPSJ-TPRO1405007.pdf"},"date":[{"dateType":"Available","dateValue":"2023-11-25"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-TPRO1405007.pdf","filesize":[{"value":"26.8 kB"}],"mimetype":"application/pdf","priceinfo":[{"tax":["include_tax"],"price":"0","billingrole":"5"},{"tax":["include_tax"],"price":"0","billingrole":"6"},{"tax":["include_tax"],"price":"0","billingrole":"15"},{"tax":["include_tax"],"price":"0","billingrole":"44"}],"accessrole":"open_date","version_id":"1389eb34-08ba-4b9e-a3fb-3a25b4d07152","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 2021 by the Information Processing Society of Japan"}]},"item_3_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Date, Yao Faustin"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Makoto, Hamana"}],"nameIdentifiers":[{}]}]},"item_3_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Date, Yao Faustin","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Makoto, Hamana","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_3_source_id_9":{"attribute_name":"書誌レコードID","attribute_value_mlt":[{"subitem_source_identifier":"AA11464814","subitem_source_identifier_type":"NCID"}]},"item_resource_type":{"attribute_name":"資源タイプ","attribute_value_mlt":[{"resourceuri":"http://purl.org/coar/resource_type/c_6501","resourcetype":"journal article"}]},"item_3_source_id_11":{"attribute_name":"ISSN","attribute_value_mlt":[{"subitem_source_identifier":"1882-7802","subitem_source_identifier_type":"ISSN"}]},"item_3_description_7":{"attribute_name":"論文抄録","attribute_value_mlt":[{"subitem_description":"Haskell is a functional programming language. The Glasgow Haskell Compiler (GHC) allows developers to use rewrite rules to optimize Haskell programs in the compilation pipeline. Confluence is a desirable property of rewrite rules. In this work, we develop a plugin for GHC to check the confluence property for GHC rewrite rules in a Haskell program by using our confluence checker SOL (Second-Order Laboratory). A plugin is a program that can extend the functionalities of GHC. In this presentation, we describe the transformation method of GHC rewrites rules into SOL. Then we demonstrate confluence checking of rewrite rules given in two Haskell libraries: Arrows with choice and Vector library. Our tool found that rewrite rules in the arrows with choice library were not confluent, which has not been reported elsewhere.","subitem_description_type":"Other"}]},"item_3_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"Haskell is a functional programming language. The Glasgow Haskell Compiler (GHC) allows developers to use rewrite rules to optimize Haskell programs in the compilation pipeline. Confluence is a desirable property of rewrite rules. In this work, we develop a plugin for GHC to check the confluence property for GHC rewrite rules in a Haskell program by using our confluence checker SOL (Second-Order Laboratory). A plugin is a program that can extend the functionalities of GHC. In this presentation, we describe the transformation method of GHC rewrites rules into SOL. Then we demonstrate confluence checking of rewrite rules given in two Haskell libraries: Arrows with choice and Vector library. Our tool found that rewrite rules in the arrows with choice library were not confluent, which has not been reported elsewhere.","subitem_description_type":"Other"}]},"item_3_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"49","bibliographic_titles":[{"bibliographic_title":"情報処理学会論文誌プログラミング(PRO)"}],"bibliographicPageStart":"49","bibliographicIssueDates":{"bibliographicIssueDate":"2021-11-25","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"5","bibliographicVolumeNumber":"14"}]},"relation_version_is_last":true,"weko_creator_id":"44499"},"updated":"2025-01-19T16:58:37.859809+00:00","created":"2025-01-19T01:14:44.460726+00:00","id":213900}