研究課題
昨年度までに様々なプログラミング言語でライブプログラミングを実現するための方法として、言語実現フレームワークに基づく方式を考案してきた。同時に、実行履歴の記録・再生速度を改善するために、時系列グラフを用いた記録方法を用いることを提案し、JavaScript言語を対象とした実現で性能向上を確認した。この成果を投稿した論文が情報処理学会論文誌論文として掲載された。また、第1著者の学生が同学会コンピュータサイエンス領域奨励賞を受賞した。編集前のプログラムの実行履歴記録とプログラムの編集内容を用いて、編集によって違いが生じる部分だけを再実行する方式を考案した。この方式をGraal/Truffleフレームワーク上のインタプリタとして実現し、実際に編集後のプログラムでは必要最小限の再実行ができることを確認した。この提案はECOOP国際会議に併設された国際ワークショップTruffleにおいて発表した。これまでの研究で行ってきたデータ構造の可視化手法の応用として、可視化デバッガにおけるデータ可視化を、対象プログラムの性質に合わせて特化する方法を構想した。この構想を日本ソフトウェア科学会大会および国内の研究集会においてポスター発表した。昨年度までに考案してきたブロック型プログラミングをプログラム設計教育で用いるための開発環境についての研究を進め、国際シンポジウムSPLASH-Eにおいて論文発表を行った。従来の教育では手書きのメモなどによって表わされていたデータ設計、契約、型紙といった中間成果物を複雑な文法を学ぶことなく記述できることが特徴であり、実際の授業で試用できる水準に達していることが確められた。
すべて 2023 2022 その他
すべて 国際共同研究 (1件) 雑誌論文 (4件) (うち国際共著 1件、 査読あり 4件、 オープンアクセス 1件) 学会発表 (3件) (うち国際学会 1件) 備考 (2件)
Journal of Systems and Software
巻: ― ページ: 111728~111728
10.1016/j.jss.2023.111728
Proceedings of the 28th annual ACM conference on Innovation and Technology in Computer Science Education (ITiCSE 2023)
巻: ― ページ: ―
SPLASH-E
巻: ― ページ: 62-69
10.1145/3563767.3568127
Journal of Information Processing
巻: 30 ページ: 451~463
10.2197/ipsjjip.30.451
https://prg.is.titech.ac.jp/projects/teaching-programming/mio/
https://prg.is.titech.ac.jp/projects/teaching-programming/enerror-generating-quiz/