{"created":"2025-01-18T23:00:33.397152+00:00","updated":"2025-01-22T16:46:33.596738+00:00","metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00031140","sets":["1164:2386:2501:2505"]},"path":["2505"],"owner":"1","recid":"31140","title":["カットオペレータを排除し明示的に制御を行う論理型言語:ALEX"],"pubdate":{"attribute_name":"公開日","attribute_value":"1987-10-01"},"_buckets":{"deposit":"5c0d6578-2384-4bf8-acfc-f80c9bcb9b0b"},"_deposit":{"id":"31140","pid":{"type":"depid","value":"31140","revision_id":0},"owners":[1],"status":"published","created_by":1},"item_title":"カットオペレータを排除し明示的に制御を行う論理型言語:ALEX","author_link":["0","0"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"カットオペレータを排除し明示的に制御を行う論理型言語:ALEX"},{"subitem_title":"ALEX: THE LOGIC PROGRAMMING LANGUAGE WITH EXPLICIT CONTROL AND WITHOUT CUT - OPERATORS","subitem_title_language":"en"}]},"item_type_id":"4","publish_date":"1987-10-01","item_4_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"慶応義塾大学理工学部電気工学科"},{"subitem_text_value":"慶応義塾大学理工学部電気工学科"}]},"item_4_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"Dept. of Electrical Engineering Faculty of Science and Technology KEIO University","subitem_text_language":"en"},{"subitem_text_value":"Dept. of Electrical Engineering Faculty of Science and Technology KEIO University","subitem_text_language":"en"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"jpn"}]},"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/31140/files/IPSJ-PRO87022004.pdf"},"date":[{"dateType":"Available","dateValue":"1989-10-01"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-PRO87022004.pdf","filesize":[{"value":"1.1 MB"}],"mimetype":"application/pdf","priceinfo":[{"tax":["include_tax"],"price":"660","billingrole":"5"},{"tax":["include_tax"],"price":"330","billingrole":"6"},{"tax":["include_tax"],"price":"0","billingrole":"15"},{"tax":["include_tax"],"price":"0","billingrole":"44"}],"accessrole":"open_date","version_id":"d3942d18-689d-410d-a6fc-8b4d64af8c67","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 1987 by the Information Processing Society of Japan"}]},"item_4_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"星田, 昌紀"},{"creatorName":"所, 真理雄"}],"nameIdentifiers":[{}]}]},"item_4_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Masaki, Hoshida","creatorNameLang":"en"},{"creatorName":"Mario, Tokoro","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_4_source_id_9":{"attribute_name":"書誌レコードID","attribute_value_mlt":[{"subitem_source_identifier":"AN10485570","subitem_source_identifier_type":"NCID"}]},"item_4_textarea_12":{"attribute_name":"Notice","attribute_value_mlt":[{"subitem_textarea_value":"SIG Technical Reports are nonrefereed and hence may later appear in any journals, conferences, symposia, etc."}]},"item_resource_type":{"attribute_name":"資源タイプ","attribute_value_mlt":[{"resourceuri":"http://purl.org/coar/resource_type/c_18gh","resourcetype":"technical report"}]},"item_4_description_7":{"attribute_name":"論文抄録","attribute_value_mlt":[{"subitem_description":"本論文では Prologの宣言的なプログラム記述性の利点を生かしつつ,手続き的側面を強化したプログラミング言語「ALEX」を提案する。ALEXでは,バックトラックを条件分岐に相当する\"Retry\"と,本質的な試行錯誤に相当する\"Recall\"という二つの範ちゅうに分け,この二つを別々の方法でコントロールする。そのコントロールは以下のように行う。\"Recall\"はデフォルトで不可とし,「許可」を明示したときのみ可能とする。\"Retry\"はデフォルトで可能とし,「禁止」を明示したときのみ不可とする。このようにコントロールを明示的に記述することによって,カットオペレータを排除し,デバッグの容易化およびリーダビリティーの向上を図っている。また,バックトラックに制限を設けることにより「枝の刈り残し」によるバグも大幅に削減できる。しかもこれらの実行制御は,「述語」のプレフィクスとして記述されるため,プレフィクスを無視することによりPrologと同様,プログラムの宣言的な解釈が可能である。","subitem_description_type":"Other"}]},"item_4_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"We propose a Prolog-like new programming language \"ALEX\". It is an extention of Prolog from the view point of procedural programming, keeping the merit of declarative nature of Prolog. In ALEX, the backtrack mechanism is devided into two categories: \" Retry\" and \"Recall\". \"Retry\" corresponds to \"branch on condition\", while \"Recall\" coressponds to \"essential try and error\". And these two actions are controled in different methods. They are controled as follows. \"Recall\" cannot be performed in default state, and it can be performed only when permitted explicitly. \"Retry\" can be performed in default state, and it cannot be performed only when prohibited explicitly. By such explicit expresion of execution control, \"cut-operators\" are excluded. As a result, we can achieve easy debugging and higher readability. And the restriction of the backtrack can effectively reduce the bugs of what we call \"Branches forgotten to cut\". Further more, since these control is written as prefix of predicate, we can read ALEX programs decaratively as in Prolog by ignoring the prefix.","subitem_description_type":"Other"}]},"item_4_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"8","bibliographic_titles":[{"bibliographic_title":"情報処理学会研究報告プログラミング(PRO)"}],"bibliographicPageStart":"1","bibliographicIssueDates":{"bibliographicIssueDate":"1987-10-01","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"72(1987-PRO-022)","bibliographicVolumeNumber":"1987"}]},"relation_version_is_last":true,"weko_creator_id":"1"},"id":31140,"links":{}}