{"links":{},"id":182286,"metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00182286","sets":["934:935:8954:9150"]},"path":["9150"],"owner":"11","recid":"182286","title":["教育用システム記述言語"],"pubdate":{"attribute_name":"公開日","attribute_value":"2017-06-16"},"_buckets":{"deposit":"3d19bc66-c134-4646-8caa-8250455c705c"},"_deposit":{"id":"182286","pid":{"type":"depid","value":"182286","revision_id":0},"owners":[11],"status":"published","created_by":11},"item_title":"教育用システム記述言語","author_link":["396619","396620"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"教育用システム記述言語"},{"subitem_title":"Educational System Description Language","subitem_title_language":"en"}]},"item_keyword":{"attribute_name":"キーワード","attribute_value_mlt":[{"subitem_subject":"[発表概要] ","subitem_subject_scheme":"Other"}]},"item_type_id":"3","publish_date":"2017-06-16","item_3_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"徳山工業高等専門学校情報電子工学科"}]},"item_3_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"Department of Computer Science & Electronic Engineering, Tokuyama College of Technology","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/182286/files/IPSJ-TPRO1003006.pdf","label":"IPSJ-TPRO1003006.pdf"},"date":[{"dateType":"Available","dateValue":"2019-06-16"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-TPRO1003006.pdf","filesize":[{"value":"95.0 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":"ef0231f7-4d76-472b-b9ab-535f097a0a24","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 2017 by the Information Processing Society of Japan"}]},"item_3_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"重村, 哲至"}],"nameIdentifiers":[{}]}]},"item_3_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Tetsuji, Shigemura","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":"教育用システム記述言語C--は,C言語に似た教育用のプログラミング言語である.C--言語は以下の3つの目的を持つ.(1)教育用コンピュータTaCのオペレーティングシステム(OS)を記述しOSの実装例を学生に示す.(2) C--言語コンパイラ自体をコンパイラの実装例として学生に示す.(3)学生が短時間で習得し組込みプログラミングを行うために使用する.この目的を達成するために,まず,C言語を参考に初心者が習得しやすいコンパクトな言語を設計した.その際,初心者が間違えやすい言語仕様をなるべく排除した.次に,学生が実装例として参照できる小さなコンパイラを作成した.構文木を作ることなく,構文解析と同時にコード生成をすることで処理系を小さくした.しかし,コンパクトな実装が必ずしも読みやすい実装にならないことが分かった.そこで構文木を導入し,構文解析,コード生成等を独立したモジュールに分離した.最後に,C--言語を用いてTaC用のオペレーティングシステムを記述し,システム記述言語として実用的に使用できることを確認した.C--言語はC言語と比較して仕様が小さく学習が容易であり,一方でOSやコンパイラを記述することも可能であり当初の目的に使用できる.しかし,関数ローカルな配列の宣言ができない等,不十分な点があることも分かった.","subitem_description_type":"Other"}]},"item_3_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"The C-- language has three following purposes. (1) To describe the operating system (OS) of educational computer TaC and show the implementation of an OS to students. (2) To show C-- language compiler to students as an implementation of a compiler. (3) Students can learn C-- language at short time. And they can use it to program embedded systems. To achieve these purposes, we designed a compact language without complicated syntax to beginners. Then, we implemented the small compiler which students can refer to as an implementation. To be downsized, the compiler performs parsing and code generation at the same time without syntax tree. However, we understood that a compact implementation was not necessarily easy to read it. Therefore we introduced a syntax tree and separated parsing and code generation to independent modules. Finally we described the TaC operating system by using C-- language, and we confirmed that we could use it as a practical system description language. The specification of C-- is smaller than that of C language. So students can easily understand it. On the other hand, C-- language has ability to describe an OS and a compiler. However, it became clear that there were the insufficient points such as that arrays could not be declared in a function.","subitem_description_type":"Other"}]},"item_3_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"15","bibliographic_titles":[{"bibliographic_title":"情報処理学会論文誌プログラミング(PRO)"}],"bibliographicPageStart":"15","bibliographicIssueDates":{"bibliographicIssueDate":"2017-06-16","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"3","bibliographicVolumeNumber":"10"}]},"relation_version_is_last":true,"weko_creator_id":"11"},"created":"2025-01-19T00:49:54.711345+00:00","updated":"2025-01-20T04:08:56.518466+00:00"}