2024/11/21 更新

写真a

ウエノ カツヒロ
上野 雄大
UENO Katsuhiro
所属
教育研究院 自然科学系 情報電子工学系列 准教授
自然科学研究科 電気情報工学専攻 准教授
工学部 工学科 准教授
職名
准教授
外部リンク

学位

  • 博士(情報科学) ( 2009年3月   東北大学 )

研究キーワード

  • ML

  • ソフトウェア開発

  • コンパイラ

  • 関数型言語

  • 型理論

研究分野

  • 情報通信 / ソフトウェア  / プログラミング

  • 情報通信 / 情報学基礎論  / プログラミング言語理論

経歴(researchmap)

  • 新潟大学   自然科学系情報電子工学系列   准教授

    2021年10月 - 現在

      詳細を見る

  • 東北大学 電気通信研究所   准教授

    2016年6月 - 2021年9月

      詳細を見る

  • 東北大学 電気通信研究所   助教

    2009年4月 - 2016年5月

      詳細を見る

  • 東北大学 電気通信研究所   産学官連携研究員

    2006年6月 - 2008年3月

      詳細を見る

経歴

  • 新潟大学   教育研究院 自然科学系 情報電子工学系列   准教授

    2021年10月 - 現在

  • 新潟大学   自然科学研究科 電気情報工学専攻   准教授

    2021年10月 - 現在

  • 新潟大学   工学部 工学科   准教授

    2021年10月 - 現在

学歴

  • 東北大学   大学院情報科学研究科   システム情報科学専攻

    2006年4月 - 2009年3月

      詳細を見る

    備考: 博士課程後期3年の過程

    researchmap

  • 北陸先端科学技術大学院大学   情報科学研究科   情報処理学専攻

    2004年4月 - 2006年3月

      詳細を見る

    備考: 博士前期過程

    researchmap

所属学協会

委員歴

  • The 29th ACM SIGPLAN International Conference on Functional Programming (ICFP 2024)   A program committee member  

    2024年9月   

      詳細を見る

  • The 29th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications(RTCSA’23)   Local Arrangements Chair  

    2023年9月   

      詳細を見る

  • Libraries, Languages and Compilers for Array Programming (ARRAY 2023)   A Program Committee Member  

    2023年6月   

      詳細を見る

  • 情報処理学会プログラミング研究会   幹事  

    2022年4月 - 現在   

      詳細を見る

    団体区分:学協会

    researchmap

  • ACM SIGPLAN ML Family Workshop 2021   A program committee member  

    2021年8月   

      詳細を見る

  • 日本ソフトウェア科学会プログラミング論研究会   運営委員  

    2021年4月 - 現在   

      詳細を見る

    団体区分:学協会

    researchmap

  • 第23回プログラミングおよびプログラミング言語ワークショップ (PPL 2021)   プログラム共同委員長  

    2021年3月   

      詳細を見る

  • The 3rd cross-disciplinary Workshop on Computing Systems, Infrastructures, and Programming (xSIG 2019)   プログラム委員  

    2019年5月   

      詳細を見る

  • The 23rd ACM SIGPLAN International Conference on Functional Programming (ICFP 2018)   A program committee member  

    2018年9月   

      詳細を見る

  • The 2nd. cross-disciplinary Workshop on Computing Systems, Infrastructures, and Programming (xSIG 2018)   プログラム委員  

    2018年4月   

      詳細を見る

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

    2018年3月   

      詳細を見る

  • The 1st cross-disciplinary Workshop on Computing Systems, Infrastructures, and Programming (xSIG 2017)   プログラム委員  

    2017年4月   

      詳細を見る

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

    2017年3月   

      詳細を見る

  • The 21st ACM SIGPLAN International Conference on Functional Programming (ICFP 2016)   An external reviewer committee member  

    2016年9月   

      詳細を見る

  • ACM SIGPLAN ML Family Workshop 2016   A programme committee member  

    2016年9月   

      詳細を見る

  • 日本ソフトウェア科学会第33回大会   運営委員長  

    2016年9月   

      詳細を見る

  • 情報処理学会プログラミング研究会   運営委員  

    2016年4月 - 2020年3月   

      詳細を見る

    団体区分:学協会

    researchmap

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

    2016年3月   

      詳細を見る

  • 第18回プログラミングおよびプログラミング言語ワークショップ (PPL 2016)   組織委員  

    2016年3月   

      詳細を見る

  • 情報処理学会論文誌プログラミング (PRO)   編集委員  

    2015年4月 - 2019年3月   

      詳細を見る

  • 第17回プログラミングおよびプログラミング言語ワークショップ (PPL 2015)   組織委員  

    2015年3月   

      詳細を見る

  • 第16回プログラミングおよびプログラミング言語ワークショップ (PPL 2014)   実行副委員長  

    2014年3月   

      詳細を見る

  • 第15回プログラミングおよびプログラミング言語ワークショップ (PPL 2013)   実行委員長  

    2013年3月   

      詳細を見る

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

    2012年3月   

      詳細を見る

▶ 全件表示

 

論文

  • 型別名を保存する型推論アルゴリズム 査読

    佐藤 季樹, 上野 雄大

    第26回プログラミングおよびプログラミング言語ワークショップ (PPL 2024)   2024年3月

     詳細を見る

  • Concurrent and Parallel Garbage Collection for Lightweight Threads on Multicore Processors 査読

    Katsuhiro Ueno, Atsushi Ohori

    Proceedings of the 2022 ACM SIGPLAN International Symposium on Memory Management   2022年6月

     詳細を見る

    掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:ACM  

    DOI: 10.1145/3520263.3534652

    researchmap

  • A Compilation Method for Dynamic Typing in ML 査読

    Atsushi Ohori, Katsuhiro Ueno

    APLAS 2021: Programming Languages and Systems   140 - 159   2021年10月

     詳細を見る

    掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:Springer International Publishing  

    DOI: 10.1007/978-3-030-89051-3_9

    researchmap

  • 自然なデータ表現を持つ多相型言語のLLVM IRへのコンパイル方式 査読

    上野雄大

    第22回プログラミングおよびプログラミング言語ワークショップ (PPL 2020)   2020年3月

     詳細を見る

  • Progress report: Ruby 3における静的型解析の実現に向けて 査読

    遠藤侑介, 松本宗太郎, 上野雄大, 住井英二郎, 松本行弘

    第21回プログラミングおよびプログラミング言語ワークショップ (PPL2019)   2019年3月

     詳細を見る

  • 関数型言語SML#のためのコードレベルデバッグ環境の実現方式 査読

    大野一樹, 上野雄大, 大堀淳

    情報処理学会論文誌 プログラミング(PRO)   11 ( 3 )   1 - 13   2018年9月

     詳細を見る

    掲載種別:研究論文(学術雑誌)  

    researchmap

  • Finitary Polymorphism for Optimizing Type-Directed Compilation 査読

    Atsushi Ohori, Katsuhiro Ueno, Hisayuki Mima

    Proceedings of the ACM on Programming Languages   2 ( ICFP )   1 - 29   2018年7月

     詳細を見る

    掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:Association for Computing Machinery (ACM)  

    DOI: 10.1145/3236776

    researchmap

  • 部分動的レコードを活用した型付きテンプレートエンジンの実現 査読

    逢坂美冬, 上野雄大, 大堀淳

    コンピュータソフトウェア   35 ( 3 )   3_79 - 3_95   2018年7月

     詳細を見る

    掲載種別:研究論文(学術雑誌)  

    DOI: 10.11309/jssst.35.3_79

    researchmap

  • ML系言語とストリーミングデータベースの統合 査読

    高城光平, 上野雄大, 大堀淳

    The 2nd. cross-disciplinary Workshop on Computing Systems, Infrastructures, and Programming (xSIG 2018)   2018年5月

     詳細を見る

  • Java PathFinderによるMLプログラムの捕捉されない例外の検証 査読

    魚谷孝太, 上野雄大, 大堀淳

    The 2nd. cross-disciplinary Workshop on Computing Systems, Infrastructures, and Programming (xSIG 2018)   2018年5月

     詳細を見る

  • Making SML# a General-Purpose High-Performance Language 査読

    Atsushi Ohori, Kenjiro Taura, Katsuhiro Ueno

    ACM SIGPLAN ML Family Workshop 2017   2017年9月

     詳細を見る

  • SML# with Natural Join 査読

    Tomohiro Sasaki, Katsuhiro Ueno, Atsushi Ohori

    ACM SIGPLAN ML Family Workshop 2016   2016年9月

     詳細を見る

  • A Fully Concurrent Garbage Collector for Functional Programs on Multicore Processors 査読

    Katsuhiro Ueno, Atsushi Ohori

    Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming - ICFP 2016   421 - 433   2016年9月

     詳細を見る

    記述言語:英語   掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:ACM Press  

    DOI: 10.1145/2951913.2951944

    Web of Science

    researchmap

  • A Foreign Language Interface from ML to Shell 査読

    Katsuhiro Ueno, Atsushi Ohori

    New Generation Computing   34 ( 3 )   239 - 256   2016年8月

     詳細を見る

    記述言語:英語   掲載種別:研究論文(学術雑誌)   出版者・発行元:Springer Tokyo  

    This paper proposes a new approach to embedding shell scripts in an ML-style typed functional language. Instead of representing each construct in the shell script language as a typed component, the proposed approach treats an untyped shell script program as a typed function. The programmer writes a shell script and specifies its type according to the intention of his/her script. The ML compiler automatically generates glue codes that serialize and de-serialize input and output data. With this embedding mechanism, an ML programmer can enjoy the full benefits of shell programming directly within an ML program. The proposed approach has been implemented in our SML# compiler.

    DOI: 10.1007/s00354-016-0303-1

    Web of Science

    Scopus

    researchmap

    その他リンク: http://link.springer.com/article/10.1007/s00354-016-0303-1/fulltext.html

  • A Calculus with Partially Dynamic Records for Typeful Manipulation of JSON Objects 査読

    Atsushi Ohori, Katsuhiro Ueno, Tomohiro Sasaki, Daisuke Kikuchi

    Proceedings of the 30th European Conference on Object-Oriented Programming (ECOOP 2016)   18:1 - 18:25   2016年7月

     詳細を見る

    記述言語:英語   掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:Schloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing  

    This paper investigates language constructs for high-level and type-safe manipulation of JSON objects in a typed functional language. A major obstacle in representing JSON in a static type system is their heterogeneous nature: in most practical JSON APIs, a JSON array is a heterogeneous list consisting of, for example, objects having common fields and possibly some optional fields. This paper presents a typed calculus that reconciles static typing constraints and heterogeneous JSON arrays based on the idea of partially dynamic records originally proposed and sketched by Buneman and Ohori for complex database object manipulation. Partially dynamic records are dynamically typed records, but some parts of their structures are statically known. This feature enables us to represent JSON objects as typed data structures. The proposed calculus smoothly extends with ML-style pattern matching and record polymorphism. These results yield a typed functional language where the programmer can directly import JSON data as terms having static types, and can manipulate them with the full benefits of static polymorphic type-checking. The proposed calculus has been embodied in SML#, an extension of Standard ML with record polymorphism and other practically useful features. This paper also reports on the details of the implementation and demonstrates its feasibility through examples using actual Web APIs. The SML# version 3.1.0 compiler includes JSON support presented in this paper and is available from Tohoku University as open-source software under a BSD-style license.

    DOI: 10.4230/LIPIcs.ECOOP.2016.18

    Scopus

    researchmap

  • A Type Safe Access to Key-Value Stores from Functional Languages 査読

    Katsuhiro Ueno, Atsushi Ohori

    Journal of Information Processing   24 ( 1 )   141 - 151   2016年1月

     詳細を見る

    掲載種別:研究論文(学術雑誌)   出版者・発行元:Information Processing Society of Japan  

    DOI: 10.2197/ipsjjip.24.141

    Scopus

    researchmap

  • 変数参照関係を用いた関数型プログラムのコードリーディング支援 査読

    遠藤 誠典, 百足 勇人, 森畑 明昌, 上野 雄大, 大堀 淳

    コンピュータソフトウェア   32 ( 1 )   1_194 - 1_212   2015年1月

     詳細を見る

    記述言語:日本語   掲載種別:研究論文(学術雑誌)   出版者・発行元:日本ソフトウェア科学会  

    既存のプログラムを再利用したり,複数人でプログラムを開発したりする際など,コードを読み内容を理解する必要に迫られることは少なくなく,これを支援するツールが求められる.本論文では,関数型プログラム向けのコードリーディング支援ツールの試作について報告する.我々の試作は,関数型プログラムはデータフローによって計算を行っており,データフローは変数に代表される名前の依存関係によって表現される,との洞察に基づいている.これをふまえ,本試作は,コンパイラを用いて名前の依存関係を取得し,その情報を以下の2つの機能として提示する.1つは,名前の参照位置からその定義位置へエディタ上でカーソルを移動させる機能である.これはデータフローを追跡するのに役立つ.もう1つは,変数や関数の依存関係をもとにファイル間の依存関係を可視化する機能であり,これにより各モジュールがどのモジュールで定義された資源を利用しているかを直感的に把握できる.

    DOI: 10.11309/jssst.32.1_194

    CiNii Article

    researchmap

  • The Essence of Ruby 査読

    Katsuhiro Ueno, Yutaka Fukasawa, Akimasa Morihata, Atsushi Ohori

    Programming Languages and Systems   78 - 98   2014年11月

     詳細を見る

    掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:Springer International Publishing  

    DOI: 10.1007/978-3-319-12736-1_5

    researchmap

  • Compiling SML# with LLVM: a Challenge of Implementing ML on a Common Compiler Infrastructure 査読

    Katsuhiro Ueno, Atsushi Ohori

    ACM SIGPLAN ML Family Workshop 2014   2014年9月

     詳細を見る

  • SML# in Industry: A Practical ERP System Development 査読

    Atsushi Ohori, Katsuhiro Ueno, Kazunori Hoshi, Shinji Nozaki, Takashi Sato, Tasuku Makabe, Yuki Ito

    Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP   167 - 173   2014年9月

     詳細を見る

    記述言語:英語   掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:Association for Computing Machinery  

    This paper reports on our industry-academia project of using a functional language in business software production. The general motivation behind the project is our ultimate goal of adopting an ML-style higher-order typed functional language in a wide range of ordinary software development in industry. To probe the feasibility and identify various practical problems and needs, we have conducted a 15 month pilot project for developing an enterprise resource planning (ERP) system in SML#. The project has successfully completed as we have planned, demonstrating the feasibility of SML#. In particular, seamless integration of SQL and direct C language interface are shown to be useful in reliable and efficient development of a data intensive business application. During the program development, we have found several useful functional programming patterns and a number of possible extensions of an ML-style language with records. This paper reports on the project details and the lessons learned from the project. © 2014 ACM.

    DOI: 10.1145/2628136.2628164

    Web of Science

    Scopus

    researchmap

  • SML#のSQL統合機能への行集約機能の実装 査読

    斎藤皓, 上野雄大, 森畑明昌, 大堀淳

    第16回プログラミングおよびプログラミング言語ワークショップ (PPL 2014)   2014年3月

     詳細を見る

  • SML#のデータベース連携機能を活用したウェブアプリケーション構築技術 査読

    藤井貴啓, 上野雄大, 森畑明昌, 大堀淳

    第15回プログラミングおよびプログラミング言語ワークショップ (PPL 2013)   2013年3月

     詳細を見る

  • Cとの連携機能を持つ関数型言語におけるプロファイラの試作 査読

    朝井雄大, 上野雄大, 森畑明昌, 大堀淳

    第15回プログラミングおよびプログラミング言語ワークショップ (PPL 2013)   2013年3月

     詳細を見る

  • 多相レコード計算に基づく軽量な第一級オーバーロードの設計と実装 査読

    上野雄大, 大堀淳

    コンピュータソフトウェア   29 ( 1 )   1_191 - 1_210   2012年1月

     詳細を見る

    掲載種別:研究論文(学術雑誌)  

    DOI: 10.11309/jssst.29.1_191

    researchmap

  • An Efficient Non-Moving Garbage Collector for Functional Languages 査読

    Katsuhiro Ueno, Atsushi Ohori, Toshiaki Otomo

    Proceedings of the 16th ACM SIGPLAN international conference on Functional programming   46 ( 9 )   196 - 208   2011年9月

     詳細を見る

    記述言語:英語   掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:ACM Press  

    Motivated by developing a memory management system that allows functional languages to seamlessly inter-operate with C, we propose an efficient non-moving garbage collection algorithm based on bitmap marking and report its implementation and performance evaluation. In our method, the heap consists of sub-heaps {Hi | c ≤ i ≤ B} of exponentially increasing allocation sizes (Hi for 2i bytes) and a special sub-heap for exceptionally large objects. Actual space for each sub-heap is dynamically allocated and reclaimed from a pool of fixed size allocation segments. In each allocation segment, the algorithm maintains a bitmap representing the set of live objects. Allocation is done by searching for the next free bit in the bitmap. By adding meta-level bitmaps that summarize the contents of bitmaps hierarchically and maintaining the current bit position in the bitmap hierarchy, the next free bit can be found in a small constant time for most cases, and in log32(segmentSize) time in the worst case on a 32-bit architecture. The collection is done by clearing the bitmaps and tracing live objects. The algorithm can be extended to generational GC by maintaining multiple bitmaps for the same heap space. The proposed method does not require compaction and objects are not moved at all. This property is significant for a functional language to inter-operate with C, and it should also be beneficial in supporting multiple native threads. The proposed method has been implemented in a full-scale Standard ML compiler. Our benchmark tests show that our nonmoving collector performs as efficiently as a generational copying collector designed for functional languages. Copyright © 2011 ACM.

    DOI: 10.1145/2034574.2034802

    Web of Science

    Scopus

    researchmap

  • Making Standard ML a Practical Database Programming Language 査読

    Atsushi Ohori, Katsuhiro Ueno

    Proceedings of the 16th ACM SIGPLAN international conference on Functional programming   46 ( 9 )   307 - 319   2011年9月

     詳細を見る

    記述言語:英語   掲載種別:研究論文(国際会議プロシーディングス)   出版者・発行元:ACM Press  

    Integrating a database query language into a programming language is becoming increasingly important in recently emerging high-level cloud computing and other applications, where efficient and sophisticated data manipulation is required during computation. This paper reports on seamless integration of SQL into SML# - an extension of Standard ML. In the integrated language, the type system always infers a principal type for any type consistent SQL expression. This makes SQL queries first-class citizens, which can be freely combined with any other language constructs definable in Standard ML. For a program involving SQL queries, the compiler separates SQL queries and delegates their evaluation to a database server, e.g. PostgreSQL or MySQL in the currently implemented version. The type system of our language is largely based on Machiavelli, which demonstrates that ML with record polymorphism can represent type structure of SQL. In order to develop a practical language, however, a number of technical challenges have to be overcome, including static enforcement of server connection consistency, proper treatment of overloaded SQL primitives, query compilation, and runtime connection management. This paper describes the necessary extensions to the type system and compilation, and reports on the details of its implementation. Copyright © 2011 ACM.

    DOI: 10.1145/2034574.2034815

    Web of Science

    Scopus

    researchmap

  • 宣言的記述からの関数型言語によるゲームプログラムの導出 査読

    松島勇介, 上野雄大, 森畑明昌, 大堀淳

    第13回プログラミングおよびプログラミング言語ワークショップ (PPL 2010)   2011年3月

     詳細を見る

  • 生存区間を変数名とする中間表現の実装と, それに基づく最適化 査読

    高橋和将, 森畑明昌, 上野雄大, 大堀淳

    第13回プログラミングおよびプログラミング言語ワークショップ (PPL 2011)   2011年3月

     詳細を見る

  • SML#の外部関数インターフェース 査読

    上野雄大, 大堀淳

    コンピュータソフトウェア   27 ( 2 )   2_142 - 2_168   2010年5月

     詳細を見る

    記述言語:日本語   掲載種別:研究論文(学術雑誌)  

    DOI: 10.11309/jssst.27.2_142

    researchmap

  • 制御フローの合流のための計算系 査読

    上野雄大, 大堀淳

    情報処理学会論文誌プログラミング(PRO)   1 ( 3 )   19 - 33   2008年10月

     詳細を見る

    記述言語:日本語   掲載種別:研究論文(学術雑誌)  

    researchmap

  • 型代入を遅延する最適化型推論アルゴリズム 査読

    上野雄大, 大堀淳

    コンピュータソフトウェア   25 ( 2 )   2_101 - 2_113   2008年5月

     詳細を見る

    記述言語:日本語   掲載種別:研究論文(学術雑誌)  

    DOI: 10.11309/jssst.25.2_101

    researchmap

▶ 全件表示

書籍等出版物

  • SML#で始める実践MLプログラミング

    大堀 淳, 上野 雄大( 担当: 共著)

    共立出版  2021年4月  ( ISBN:9784320124714

     詳細を見る

    総ページ数:vii, 231p   記述言語:日本語

    CiNii Books

    researchmap

MISC

  • 日本語は計算が書けるか

    上野雄大

    コンピュータソフトウェア   41 ( 3 )   3_90 - 3_91   2024年7月

     詳細を見る

  • 日本ソフトウェア科学会第40回大会 受賞者による受賞研究紹介

    末永 幸平

    コンピュータソフトウェア   41 ( 3 )   3_76 - 3_86   2024年7月

     詳細を見る

  • 日本ソフトウェア科学会第37回大会受賞者による受賞研究紹介

    住井 英二郎

    コンピュータソフトウェア   38 ( 2 )   2_5 - 2_13   2021年4月

     詳細を見る

  • 日本ソフトウェア科学会第33回大会報告

    光来 健一, 上野 雄大

    コンピュータソフトウェア   34 ( 1 )   1_39 - 1_51   2017年1月

     詳細を見る

講演・口頭発表等

Works(作品等)

受賞

  • 第40回大会優秀発表賞

    2023年12月   日本ソフトウェア科学会   Minissg: 小さく軽量で規約のない静的Webサイトジェネレータ

     詳細を見る

  • 第37回高橋奨励賞

    2021年1月   日本ソフトウェア科学会   自然なデータ表現を持つ多相型言語のLLVM IRへのコンパイル方式

     詳細を見る

  • 第37回大会優秀発表賞

    2020年10月   日本ソフトウェア科学会   自然なデータ表現を持つ多相型言語のLLVM IRへのコンパイル方式

     詳細を見る

  • 第24回研究論文賞

    2020年9月   日本ソフトウェア科学会   部分動的レコードを活用した型付きテンプレートエンジンの実現

    逢坂美冬, 上野雄大, 大堀淳

     詳細を見る

  • トーキン財団奨励賞

    2015年3月   公益財団法人トーキン科学技術振興財団   高信頼プログラミング言語の実用化技術の研究および次世代言語処理系の開発

     詳細を見る

  • 第27回大会高橋奨励賞

    2011年1月   日本ソフトウェア科学会   多相レコード計算に基づく軽量な第一級オーバーロードの設計と実装

     詳細を見る

    受賞区分:国内学会・会議・シンポジウム等の賞  受賞国:日本国

    researchmap

▶ 全件表示

共同研究・競争的資金等の研究

  • 計算資源の抽象化を必要としない関数型言語の開発

    研究課題/領域番号:24K14894

    2024年4月 - 2029年3月

    制度名:科学研究費助成事業

    研究種目:基盤研究(C)

    提供機関:日本学術振興会

    上野 雄大

      詳細を見る

    配分額:4550000円 ( 直接経費:3500000円 、 間接経費:1050000円 )

    researchmap

  • ソフトウェアのビルド手続きを系統的に記述するための新たな枠組みの開発

    2023年9月 - 2024年3月

    制度名:試験研究費

    提供機関:公益財団法人新潟工学振興会

      詳細を見る

    担当区分:研究代表者 

    researchmap

  • マルチコア並列計算に対応した関数型言語処理系の実現

    研究課題/領域番号:19K11893

    2019年4月 - 2023年3月

    制度名:科学研究費助成事業 基盤研究(C)

    研究種目:基盤研究(C)

    提供機関:日本学術振興会

    上野 雄大

      詳細を見る

    担当区分:研究代表者 

    配分額:4290000円 ( 直接経費:3300000円 、 間接経費:990000円 )

    本研究の一般的な目的は,C言語やFORTRANに匹敵する並列計算性能を安定して発揮できる関数型言語処理系を実現することである.この実現に向けて,本研究では,主に関数型言語のコードが行うメモリの使い方に着目し,暗黙的なメモリ操作や大域的同期を含まないコードを生成するコンパイル方式の開発,および関数型言語の高いメモリ要求に耐える性能を発揮する並行・並列メモリ管理方式の構築を目指した研究を実施している.本年度は,主にソフトウェア開発およびコンパイル方式の理論的基礎の検討を行い,以下の成果を得た.
    (1) 本研究で開発している並行並列ガベージコレクション(GC)アルゴリズムのSML#コンパイラにおける実装に含まれていた潜在的なパフォーマンス上の問題点を発見し,パラメタの細やかなチューニングを含めた修正を行い,方式および実装の完成度を更に高めた.また,このGCの利用を前提としたSML#のスレッドバインディングのバグを修正した.
    (2) 駆動するCPUコアの数を増やすことで実行時間が短縮されることが期待できる,自明でないタスク並列ベンチマークプログラムを複数の言語で作成し,多言語との比較を含む性能評価を行い,本研究で開発したGC方式の優れた効果を改めて確認した.
    (3) 本研究が目指す,暗黙的なメモリ操作を含まないコードを生成するコンパイル方式を綿密に検討する過程において,メモリの使い方が明らかな操作的意味論の必要性とその構成に関する着想を得た.この着想は,宣言的で抽象度が高い記述をしながら,マルチコアCPUやメモリなどの具象的な計算資源を緻密に制御することを可能とする,新しい関数型言語の実現に繋がる可能性がある.

    researchmap

  • 超並列技術をML系高信頼言語SML#に統合した超並列関数型言語の実現と最適化

    研究課題/領域番号:18K11233

    2018年4月 - 2022年3月

    制度名:科学研究費助成事業 基盤研究(C)

    研究種目:基盤研究(C)

    提供機関:日本学術振興会

    大堀 淳, 上野 雄大

      詳細を見る

    担当区分:研究分担者 

    配分額:4290000円 ( 直接経費:3300000円 、 間接経費:990000円 )

    本研究の目的は、マルチコアプロセッサにスケールする超並列技術を、研究代表者等によって開発された高信頼関数型言語SML#に統合し、大規模分散計算や超並列計算をサポートする関数型言語を実現することである。この実現のため、(1)高水準言語処理系とOSライブラリとの直接連携による高水準超並列言語の実現と最適化、(2)方程式集合の並列変換を基礎とする大規模分散データ並列言語機能の設計と実現、(3)データベース問い合わせ言語との統合を基礎とする超並列入出力処理方式の研究、さらに、(4)以上の成果を統合した超並列SML#言語の実現を目指した研究を実施する計画である。
    本年度は、昨年度に引き続き(1)の基盤となる並行ゴミ集め方式のさらなる改良、新たに(3)の基盤となる動的な型付け機構の研究の完成、さらに、(4)の実現を目指し以上の成果を統合したSML#言語の開発を行いgithubにてソース共に広く世界にリリースした。これらの成果の概要は以下のとおりである。(1) 本年度は、昨年度に開発した並行ゴミ集め方式のアルゴリズムと実装の最適化とチューニングを行い、システムの性能評価を通じて、他の関数型言語を凌駕する性能を確認した。(3)本年度は、昨年度に構築した動的型付け機構を多相型言語に系統的に導入する方式の完全な実装を行い、SML#4.0.0版に組み込リリースした。(4)これら成果を統合し拡張したSML#言語を開発した。
    さらに、それらの成果のコミュニティ・社会への幅広い貢献・還元を目指し、並列・並行プログラミング技術を含むSML#のプログラミングの教科書、および、SML#言語を用いたML系関数型言語のコンパイラ構築方に関する教科書を執筆し共立出版社より出版した。

    researchmap

  • 実用プログラミング言語のための系統的言語開発基盤の実現

    研究課題/領域番号:15K15964

    2015年4月 - 2019年3月

    制度名:科学研究費助成事業 若手研究(B)

    研究種目:若手研究(B)

    提供機関:日本学術振興会

    上野 雄大

      詳細を見る

    担当区分:研究代表者 

    配分額:3900000円 ( 直接経費:3000000円 、 間接経費:900000円 )

    実用プログラミング言語の系統的な設計と実装のための枠組みを研究し,以下の成果を得た.(1)レコード多相性の考え方を応用してRuby言語を独立性の高い計算系の集合に分割し,それらを系統的に合成することで言語全体の操作的意味論を構築した.その結果からインタプリタを導出できることを確認した.(2)Ruby開発チームとの共同研究として,Rubyのための抽象解釈に基づく型プロファイラおよび漸進的型付けの考え方を取り入れた型検査器を開発した.(3)関数型言語コンパイラ構築の要素技術として,静的型付け言語から外部JSONデータを型付きで操作する体系,およびミューテータを止めない並行ごみ集め方式を開発した.

    researchmap

  • ML系多相型言語SML#の実用化技術に関する基礎研究

    研究課題/領域番号:25280019

    2013年4月 - 2018年3月

    制度名:科学研究費助成事業 基盤研究(B)

    研究種目:基盤研究(B)

    提供機関:日本学術振興会

    大堀 淳, 上野 雄大

      詳細を見る

    担当区分:研究分担者 

    配分額:8190000円 ( 直接経費:6300000円 、 間接経費:1890000円 )

    ML系多相型言語SML#の実用化技術に関する基礎研究を行い、(1) 汎用の低レベル言語用コード生成方式の構築およびLLVM向けのバックエンドの開発、(2)並行GC方式とアルゴリズムの構築およびマルチコアにスケールする並行GCシステムの開発と実装、(3)部分動的レコードを用いたJSONデータ操作方式の開発と実装、(4)産業界と連携した実用ERPシステムの開発、等の成果をあげ、これら成果をSML#コンパイラに実装し、世界に向けて継続的にリリースした。また、これら成果を含むSML#コンパイラの系統的なテスト環境を構築し、コンパイラの堅牢性を高めた。

    researchmap

  • 高水準かつ安全なプログラミング言語間連携機構の実現

    研究課題/領域番号:24700021

    2012年4月 - 2015年3月

    制度名:科学研究費助成事業 若手研究(B)

    研究種目:若手研究(B)

    提供機関:日本学術振興会

    上野 雄大

      詳細を見る

    担当区分:研究代表者 

    配分額:2730000円 ( 直接経費:2100000円 、 間接経費:630000円 )

    複数のプログラミング言語を連携してひとつのアプリケーションを安全に開発できることを目指し,本研究では,言語間連携のための正しいコードをコンパイラが型から自動的に導出することで,型付き関数型言語からそれ以外の言語を直接かつ安全に利用可能にする方式を開発した.その方式に基づき,関数型言語SML#にシェルスクリプトをそのまま埋め込む拡張を実装した.さらにRubyとの直接連携を目指し,Rubyの高水準な形式的意味論を与える基礎理論を構築した.

    researchmap

  • 証明論に基づくコンパイラの系統的な構築法の研究

    研究課題/領域番号:22500023

    2010年 - 2012年

    制度名:科学研究費助成事業 基盤研究(C)

    研究種目:基盤研究(C)

    提供機関:日本学術振興会

    大堀 淳, 上野 雄大, 森畑 明昌

      詳細を見る

    担当区分:研究分担者 

    配分額:3770000円 ( 直接経費:2900000円 、 間接経費:870000円 )

    本研究では,プログラミング言語のコンパイルの過程に現れる種々の中間言語は,直感主義的論理学の証明システムとして表現でき,それらの言語間の変換は,証明変換として表現できるはずである,との基本的な洞察を基礎とし,関数型言語のコンパイル過程を自然演繹システムから,コード言語を表現するある種のシーケント計算系にいたる証明変換の合成として表現でき,その変換可能性を示すメタレベルの証明から,コンパイルアルゴリズムが抽出できることを示した.

    researchmap

▶ 全件表示

 

担当経験のある授業科目(researchmap)

  • システムソフトウェア特論

    2023年4月
    -
    現在
    機関名:新潟大学院自然科学研究科電気情報工学専攻

     詳細を見る

  • 自然科学総論3

    2023年4月
    -
    2023年7月
    機関名:新潟大学大学院自然科学研究科

     詳細を見る

  • 情報システム基礎実習

    2022年10月
    -
    現在
    機関名:新潟大学工学部工学科知能情報システムプログラム

     詳細を見る

  • システムソフトウェア構成論

    2022年10月
    -
    現在
    機関名:新潟大学院自然科学研究科電気情報工学専攻

     詳細を見る

  • プログラミングA3

    2022年10月
    -
    現在
    機関名:新潟大学工学部工学科知能情報システムプログラム

     詳細を見る

  • プログラミングA2

    2022年6月
    -
    現在
    機関名:新潟大学工学部工学科知能情報システムプログラム

     詳細を見る

  • コンパイラ

    2022年6月
    -
    現在
    機関名:新潟大学工学部工学科知能情報システムプログラム

     詳細を見る

  • プログラミングA1

    2022年4月
    -
    現在
    機関名:新潟大学工学部工学科知能情報システムプログラム

     詳細を見る

  • ソフトウェア構成論

    2018年6月
    -
    2020年2月
    機関名:東北大学大学院情報科学研究科

     詳細を見る

  • プログラミング演習B

    2016年4月
    -
    2021年8月
    機関名:東北大学工学部電気情報物理工学科

     詳細を見る

  • 創造工学研修

    2009年10月
    -
    2020年2月
    機関名:東北大学工学部

     詳細を見る

  • 電気・通信・電子・情報工学実験

    機関名:東北大学工学部情報知能システム総合学科

     詳細を見る

  • プログラミング演習B

    機関名:東北大学工学部情報知能システム総合学科

     詳細を見る

▶ 全件表示

担当経験のある授業科目

  • 知能情報システム実験IV

    2023年
    -
    現在
    機関名:新潟大学

  • 知能情報システム実験III

    2023年
    -
    現在
    機関名:新潟大学

  • 自然科学総論III

    2023年
    機関名:新潟大学

  • システムソフトウェア特論

    2022年
    -
    現在
    機関名:新潟大学

  • システムソフトウェア構成論

    2022年
    -
    現在
    機関名:新潟大学

  • 工学リテラシー入門(情報電子分野)

    2022年
    -
    現在
    機関名:新潟大学

  • プログラミングAIII

    2022年
    -
    現在
    機関名:新潟大学

  • 情報システム基礎実習

    2022年
    -
    現在
    機関名:新潟大学

  • プログラミングAII

    2022年
    -
    現在
    機関名:新潟大学

  • プログラミングAI

    2022年
    -
    現在
    機関名:新潟大学

  • コンパイラ

    2022年
    -
    現在
    機関名:新潟大学

▶ 全件表示