Tomoki NAKAMARU #

Tomoki Nakamaru
= 中丸 智貴

Assistant Professor, Graduate School of Arts and Sciences, The University of Tokyo
= 東京大学 大学院総合文化研究科 広域科学専攻 広域システム科学系 助教

706B, Building 15, Komaba Campus (3-8-1 Komaba, Meguro, Tokyo 153-8902, Japan)
= 東京都 目黒区 駒場 3-8-1 15号館 706B (153-8902)

Awards #

  • 情報処理学会 山下記念研究賞 (2023)

  • 東京大学業務改革課題特別賞 (with Prof. H. Gottschewski & Prof. S. Chiba, 2021)

  • 日本ソフトウェア科学会第37回大会 学生奨励賞 (2020)

  • Distinguished artifact award at OOPSLA (with T. Yamazaki et al., 2019)

  • 日本ソフトウェア科学会第36回大会 学生奨励賞 (2019)

  • 東京大学大学院情報理工学系研究科 研究科長賞 (2018)

Education #

  • 2021: Ph.D., The University of Tokyo (Advisor: Prof. Shigeru Chiba)

  • 2018: M.Sc., The University of Tokyo (Advisor: Prof. Shigeru Chiba)

  • 2016: B.Eng., The University of Tokyo (Advisor: Prof. Kazuyuki Aihara)

Essays #

  • “<時に沿って> 二度あることは三度ある?” 中丸 智貴. 教養学部報, 628号, 東京大学大学院総合文化研究科・教養学部 (2021). HTML

  • “ACM SPLASH 2017 参加報告.” 中丸 智貴. コンピュータソフトウェア, Vol. 35, No. 2, 日本ソフトウェア科学会, pp.2_79–2_83 (2018). PDF

Grants #

  • 戦略的創造研究推進事業 ACT-X 加速フェーズ (科学技術振興機構, 2024/4–2025/3)

  • 戦略的創造研究推進事業 ACT-X (科学技術振興機構, 2021/10–2024/3, JPMJAX210F)

  • 科学研究費助成事業 研究活動スタート支援 (日本学術振興会, 2021/10–2023/3, 21K21279)

Lectures #

  • 実践的プログラミング (2024年度, 東京大学教養学部)

  • 情報システム利用入門 (2024年度, 東京大学教養学部)

  • Mobile Application Development (2023, The VNU Vietnam Japan University)

  • 実践的プログラミング 前半 (2023年度, 東京大学教養学部)

  • 情報システム利用入門 (2023年度, 東京大学教養学部)

  • 情報システム利用入門 (2022年度, 東京大学教養学部)

  • 情報システム利用入門 (2021年度, 東京大学教養学部)

Projects #

Publications #

  • “Multiverse Notebook: Shifting Data Scientists to Time Travelers.” Shigeyuki Sato and Tomoki Nakamaru. Proceedings of the ACM on Programming Languages, Vol. 8, Issue OOPSLA1, ACM, pp.754–783 (2024). PDF

  • “Java Fluent API の生成器 Silverchain.” 中丸 智貴. コンピュータソフトウェア, Vol. 41, No. 1, 日本ソフトウェア科学会, pp.1_3-1_14 (2024). PDF

  • “Collecting Cyclic Garbage across Foreign Function Interfaces.” Tetsuro Yamazaki, Tomoki Nakamaru, Ryota Shioya, Tomoharu Ugawa, and Shigeru Chiba. The 44th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2023). Orlando, USA. June 2023. PDF Artifact

  • “An Anomaly-based Approach for Detecting Modularity Violations on Method Placement.” Kazuki Yoda, Tomoki Nakamaru, Soramichi Akiyama, and Shigeru Chiba. The 22nd International Conference on Software Quality, Reliability, and Security (QRS 2022). Guangzhou, China. December 2022. PDF

  • “Yet Another Generating Method of Fluent Interfaces Supporting Flat- and Sub-chaining Styles.” Tetsuro Yamazaki, Tomoki Nakamaru, and Shigeru Chiba. The 15th International Conference on Software Language Engineering (SLE 2022). Auckland, New Zealand. December 2022. PDF

  • “Fluent API に対する型情報を用いた静的検査.” 中丸 智貴, 山崎 徹郎. コンピュータソフトウェア, Vol. 39, No. 3, 日本ソフトウェア科学会, pp.3_33-3_46 (2022). PDF

  • “An Empirical Study of Method Chaining in Java.” Tomoki Nakamaru, Tomomasa Matsunaga, Tetsuro Yamazaki, Soramichi Akiyama, and Shigeru Chiba. The 17th International Conference on Mining Software Repositories (MSR 2020). Seoul, Korea (Online). June 2020. PDF, Dataset, Errata & Additional notes

  • “Generating a Generic Fluent API in Java.” Tomoki Nakamaru and Shigeru Chiba. The Art, Science, and Engineering of Programming, Vol. 4, No. 3, AOSA, pp.9:1–9:23 (2020). PDF

  • “Generating a Fluent API with Syntax Checking from an LR Grammar.” Tetsuro Yamazaki, Tomoki Nakamaru, Kazuhiro Ichikawa, and Shigeru Chiba. Proceedings of the ACM on Programming Languages, Vol. 3, Issue OOPSLA, ACM, pp.134:1–134:24 (2019). PDF Artifact

  • “Generating Fluent Embedded Domain-Specific Languages with Subchaining.” Tomoki Nakamaru, Kazuhiro Ichikawa, Tetsuro Yamazaki, and Shigeru Chiba. Journal of Computer Languages, Vol. 50, Elsevier, pp.70–83 (2019). Preprint

  • “Silverchain: A Fluent API Generator.” Tomoki Nakamaru, Kazuhiro Ichikawa, Tetsuro Yamazaki, and Shigeru Chiba. The 16th International Conference on Generative Programming: Concepts and Experiences (GPCE 2017). Vancouver, Canada. October 2017. Preprint

Posters #

  • “Smells of Misunderstanding in File Path Patterns within Dockerignore.” Tomoki Nakamaru. The Asia-Pacific Software Engineering Conference Early Research Achievements (APSEC 2024 ERA). Chongqing, China. December 2024.

  • “演算子オーバーロードを利用した Fluent API とその型付け.” 中道 晃平, 中丸 智貴, 森畑 明昌. 第26回プログラミングおよびプログラミング言語ワークショップ (PPL 2024). 新潟, 日本. 2024年3月.

  • “プログラマーがコード補完を中断する理由の調査.” 岩田 風多, 中丸 智貴, 森畑 明昌. 第26回プログラミングおよびプログラミング言語ワークショップ (PPL 2024). 新潟, 日本. 2024年3月.

  • “ノートブックプログラミングにおける手戻りの調査と分析.” 中丸 智貴, 佐藤 重幸. 第25回プログラミングおよびプログラミング言語ワークショップ (PPL 2023). 愛知, 日本. 2023年3月.

  • “Multiverse Notebook: A Notebook Environment for Safe and Efficient Exploration.” Tomoki Nakamaru and Shigeyuki Sato. The ACM conference on Systems, Programming, Languages and Applications: Software for Humanity (SPLASH 2022). Auckland, New Zealand. December 2022. PDF, Demo Video

  • “試行錯誤を効率化するための自動キャッシュライブラリ.” 中丸 智貴. 日本ソフトウェア科学会第38回大会 (JSSST 2021). オンライン. 2021年9月.

  • “試行錯誤時の再計算を削減するための Python ライブラリ.” 中丸 智貴. 第4回機械学習工学ワークショップ (MLSE 夏合宿 2021) . オンライン. 2021年7月.

  • “メソッドチェイン形式の記述に関する調査.” 中丸 智貴, 松永 智將, 山崎 徹郎, 穐山 空道, 千葉 滋. 第22回プログラミングおよびプログラミング言語ワークショップ (PPL 2020). 佐賀, 日本. 2020年3月.

  • “トークン列に対する曖昧検索技術の検討.” 中丸 智貴. 第22回プログラミングおよびプログラミング言語ワークショップ (PPL 2020). 佐賀, 日本. 2020年3月.

  • “コーディングスタイルの変遷を統計的に解析するためのデータセットの構築.” 中丸 智貴, 千葉 滋. 第21回プログラミングおよびプログラミング言語ワークショップ (PPL 2019). 岩手, 日本. 2019年3月.

  • “Generating a Java Library from Its Specification.” Tomoki Nakamaru and Shigeru Chiba. The ACM conference on Systems, Programming, Languages and Applications: Software for Humanity (SPLASH 2018). Boston, USA. November 2018.

  • “Java ソースコードを読みやすくする合字の利用法.” 中丸 智貴, 千葉 滋. 第20回プログラミングおよびプログラミング言語ワークショップ (PPL 2018). 鳥取, 日本. 2018年3月.

  • “Java 用 Fluent API 生成システム B2F の設計と開発.” 中丸 智貴, 市川 和央, 山崎 徹郎, 千葉 滋. 第19回プログラミングおよびプログラミング言語ワークショップ (PPL 2017). 山梨, 日本. 2017年3月.

Workshop papers #

  • “Fluent API におけるプログラム断片のより柔軟な結合.” 中道 晃平, 中丸 智貴, 森畑 明昌. 日本ソフトウェア科学会第41回大会 (JSSST 2024). 大阪, 日本. 2024年9月. PDF

  • “ノートブックプログラミングにおける手戻りの調査と分析.” 中丸 智貴, 佐藤 重幸. 第25回プログラミングおよびプログラミング言語ワークショップ (PPL 2023). 愛知, 日本. 2023年3月. PDF

  • “セル単位の実行状態分離を備えたノートブックプログラミング環境.” 中丸 智貴, 佐藤 重幸. 第139回プログラミング研究発表会 (PRO). オンライン. 2022年6月.

  • “Javaシステムにおけるパッケージ誤りのニューラルネットワークを用いた検出手法.” 依田 和樹, 中丸 智貴, 穐山 空道, 山崎 徹郎, 千葉 滋. 日本ソフトウェア科学会第38回大会 (JSSST 2021). オンライン. 2021年9月. PDF

  • “Fluent API 生成の現実世界での利用に向けて.” 中丸 智貴, 千葉 滋. 日本ソフトウェア科学会第37回大会 (JSSST 2020). オンライン. 2020年9月. PDF

  • “YAML で記述された設定ファイルの静的検査器の開発.” 中丸 智貴, 千葉 滋. 日本ソフトウェア科学会第37回大会 (JSSST 2020). オンライン. 2020年9月. PDF

  • “GitHub 上の Java コードにおけるメソッドチェイン利用の定量的な分析.” 中丸 智貴, 千葉 滋. 日本ソフトウェア科学会第36回大会 (JSSST 2019). 東京, 日本. 2019年8月. PDF

  • “型検査を用いたコンパイル時 LR 構文解析手法の提案.” 松永 智將, 市川 和央, 山崎 徹郎, 中丸 智貴, 千葉 滋. 日本ソフトウェア科学会第34回大会 (JSSST 2017). 神奈川, 日本. 2017年9月. PDF

  • “多層ニューラルネットワークのパラメータ初期化手法の修正.” 中丸 智貴, 合原 一幸, 奥 牧人. 生産研究, Vol. 68, No. 3, 東京大学生産技術研究所, pp.261–264 (2016). PDF

Public services #

  • Member, Program Committee of OOPSLA 2025

  • 第27回プログラミングおよびプログラミング言語ワークショップ プログラム委員 (2025)

  • 第27回プログラミングおよびプログラミング言語ワークショップ 運営委員 (2025)

  • 情報処理学会 プログラミング研究会 運営委員 (2024–2025)

  • Member, Program Committee of ‹Programming› 2025

  • Member, Artifact Evaluation Committee of ‹Programming› 2025

  • Member, Program Committee of MPLR 2024

  • Member, Artifact Evaluation Committee of ‹Programming› 2024

  • Virtualization Co-Chair, Organizing Committee of ‹Programming› 2023

  • Member, Artifact Evaluation Committee of ‹Programming› 2023

  • Member, Program Committee of MoreVMs 2023

  • Member, Extended Review Committee of ECOOP 2023

  • Member, Artifact Evaluation Committee of ECOOP 2023

  • 情報処理学会 会誌編集委員会 システム分野 委員 (2022–2024)

  • Member, Extended Review Committee of ECOOP 2022

  • Member, Artifact Evaluation Committee of ECOOP 2022

  • 第24回プログラミングおよびプログラミング言語ワークショップ プログラム委員 (2022)

Talks #

  • “Syntax Checking by Type System.” TG5 Workshop co-located with the 104nd Meeting of TC39. Tokyo, Japan. Oct 2024.

  • Lightning talk on “An Empirical Study of Method Chaining in Java.” ROSE#13 at ICSE 2023. Melbourne, Australia. May 2023. Slides

  • [Invited] “Fluent API に対する型情報を用いた静的検査.” 第142回プログラミング研究発表会. 広島. 2023年1月.

  • “Dive into CPython: Time traveling の実現に向けて.” 通研共同プロジェクト研究発表会. オンライン. 2022年3月.

  • [Invited] “Java におけるメソッド連鎖記述の調査.” ソフトウェアエンジニアリングシンポジウム (SES) 2021. オンライン. 2021年9月.

  • “Silverchain: A Fluent API Generator.” 第20回プログラミングおよびプログラミング言語ワークショップ (PPL 2018). 鳥取, 日本. 2018年3月.

Theses #

  • “An Empirical Study and Code-Generation Techniques for Fluent Interfaces.” PhD dissertation, Graduate School of Information Science and Technology, The University of Tokyo. PDF

  • “A Study on a Translation Method from BNF-Style Grammars to Fluent Embedded Domain-Specific Languages with Subchaining.” Master’s thesis, Graduate School of Information Science and Technology, The University of Tokyo. PDF

  • “多層ニューラルネットワークのパラメータ初期化手法に関する研究.” Bachelor’s thesis, Department of Mathematical Engineering and Information Physics, The University of Tokyo. PDF

Work experiences #

  • 2021–: Assistant Professor at The University of Tokyo

  • 2015–2021: Freelance software engineer (for Sider, Inc. and six other companies)

  • 2015: Software engineer at Vapes, Inc.

  • 2012–2014: Founder and CTO of Heartlay Studio, Inc.

  • 2011–2012: Freelance software engineer for several companies