public:start
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン次のリビジョン両方とも次のリビジョン | ||
public:start [2017/10/11 13:53] – [リンク] nakagawa | public:start [2023/07/10 15:30] – iwasaki | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== 岩崎研究室・中野研究室 ====== | + | ====== 岩崎研究室 ====== |
- | 岩崎研究室・中野研究室では,質の高いソフトウェアと,それを構築するための洗練されたプログラミング言語について研究しています. | + | 岩崎研究室では,質の高いソフトウェアと,それを構築するための洗練されたプログラミング言語について研究しています. |
現在,国立情報学研究所等の他組織との共同で,大規模なグラフデータを処理対象とする並列アプリケーションの開発を支援するシステムの研究・開発([[http:// | 現在,国立情報学研究所等の他組織との共同で,大規模なグラフデータを処理対象とする並列アプリケーションの開発を支援するシステムの研究・開発([[http:// | ||
- | |||
- | 電気通信大学学部3年生のための,岩崎研究室への卒研配属情報は,[[http:// | ||
===== ニュース ===== | ===== ニュース ===== | ||
- | * (2017/8) 阿部と中野の論文「Towards practical typechecking | + | * (2023/7) 大塚と岩崎の論文「Haskell Library |
- | * (2017/3) 中川・高橋・Rathoreが[[https:// | + | * (2023/5) 冨井と岩崎の論文「メタヒューリスティクスの適用を効率的に記述するドメイン特化言語」が日本ソフトウェア科学会 コンピュータソフトウェアに採録されました. |
- | * (2017/3) 阿部が[[https:// | + | * (2023/3) 齊藤が[[https:// |
- | * (2017/2) 中川と中野の論文が[[https:// | + | * (2023/1) 齊藤と岩崎らの論文が[[https:// |
- | * (2017/2) 高橋と中野の論文が[[https:// | + | * (2023/1) 齋藤が[[https:// |
- | * (2017/2) Rathoreと岩崎の論文が[[https:// | + | * (2022/10) 平澤,岩崎,小野澤らの論文「Generating Virtual Machine Code of JavaScript Engine for Embedded Systems」が [[https://www.ipsj.or.jp/ |
- | * (2017/1) 北原,丹治,櫻井が[[http://www.ipsj.or.jp/prosym/58/58CFA.html|情報処理学会第58回プログラミング・シンポジウム]]にて登壇発表. | + | * (2022/9) 冨井と岡本が[[https:// |
- | * (2016/11) 新井が[[http://soict.hust.edu.vn/ | + | * (2022/6) 平澤,岩崎,小野澤らの論文「Generating Virtual Machine Code of JavaScript Engine for Embedded Systems」が情報処理学会英文誌 Journal of Information Processing に採録されました. |
- | * (2016/8) 新井,佐藤,岩崎の論文「A Debugger-Cooperative Higher-Order Contract System in Python」が[[http://soict.hust.edu.vn/~aplas2016/|APLAS 2016]]に採択. | + | * (2022/5) 宮島と岩崎らの論文「TABLET: |
- | * (2016/5) 岩崎らの論文「Think Like a Vertex, Behave Like a Function! -- A Functional DSL for Vertex-centric Big Graph Processing --」が[[http:// | + | * (2022/4) 岩崎が明治大学理工学部情報科学科に転出しました. |
- | * (2016/4) 谷村が[[http://www.acm.org/conferences/ | + | * (2022/3) 宮島が[[https:// |
- | * (2016/4) 卒研生14名,修士院生8名が配属. | + | * (2022/3) 長安と大塚が[[https:// |
- | * (2016/1) 山本が[[http://www.ipsj.or.jp/prosym/57/57CFA.html|情報処理学会第57回プログラミング・シンポジウム]]にて登壇発表. | + | * (2022/1) 長安と岩崎らの論文が[[https:// |
- | * (2015/12) 岩崎らの論文「Improving Floating-Point Numbers: a Lazy Approach to Adaptive Accuracy Refinement for Numerical Computations」が[[http://www.etaps.org/index.php/2016/esop|ESOP 2016]]に採択 | + | * (2022/1) 大塚と岩崎の論文が[[https:// |
- | * (2015/11) 谷村,岩崎の論文「Integrating Lua into C for Embedding Lua Interpreters in a C Application」が[[http://www.acm.org/conferences/sac/sac2016/|SAC 2016]]に採択. | + | * (2021/11) 岩崎らの論文「Fregel: |
- | * (2015/11) 新井が[[http://www.ipsj.or.jp/ | + | * (2021/10) 安積の発表が[[https: |
- | * (2015/9) 藤井が[[http://jssst2015.wordpress.com/|日本ソフトウェア科学会第32回大会]]にて登壇発表. | + | * (2021/9) 安積が[[https://jssst2021.wordpress.com/|日本ソフトウェア科学会第38回大会]]にて口頭発表しました. |
- | * (2015/9) 山本が[[http://jssst2015.wordpress.com/|日本ソフトウェア科学会第32回大会]]にて登壇発表. | + | * (2021/6) 小野澤が[[https://conf.researchr.org/home/ismm-2021|ISMM 2021]]にて口頭発表しました. |
- | * (2015/5) 小林,佐藤,岩崎の論文「Efficient Use of Hardware Transactional Memory for Parallel Mesh Generation」が[[http:// | + | * (2021/5) 小野澤と岩崎らの論文「Fusuma: Double-Ended Threaded Compaction」が[[https:// |
- | * (2015/4) 高野が[[http:// | + | * (2021/3) 小野澤と岩崎らの論文が[[https://jssst-ppl.org/workshop/2021/|PPL 2021]]の論文賞を受賞しました. |
- | * (2015/4) 卒研生9名,修士院生5名が配属. | + | * (2021/3) 小野澤と宮島が[[https://jssst-ppl.org/workshop/2021/|PPL 2021]]にて口頭発表しました. |
+ | * (2021/2) 小野澤と岩崎らの論文が[[https://jssst-ppl.org/workshop/2021/|PPL 2021]]のカテゴリ1に採録されました. | ||
+ | * (2021/2) 宮島と岩崎らの論文が[[https://jssst-ppl.org/workshop/2021/|PPL 2021]]のカテゴリ1に採録されました. | ||
+ | * (2020/12) 小野澤・岩崎らの論文「アプリケーションと実行環境に適応したカスタマイズが可能なJavaScript処理系」が日本ソフトウェア科学会 コンピュータソフトウェアに採録されました. | ||
+ | * (2020/6) 平澤が[[https://sigpro.ipsj.or.jp/ | ||
+ | * (2020/3) 小野澤が[[https://jssst-ppl.org/ | ||
+ | * (2020/2) 小野澤と岩崎の論文が[[https://jssst-ppl.org/ | ||
+ | * (2020/1) 丹野と岩崎らの論文「Region-based Detection | ||
+ | * (2019/12) 浅見が[[http:// | ||
+ | * (2019/4) 丹野が[[http:// | ||
[[history|ニュースの履歴]] | [[history|ニュースの履歴]] | ||
===== メンバー ===== | ===== メンバー ===== | ||
- | ^ 役職/ | + | ^ 役職/ |
- | | 教授 | [[http:// | + | | (教授) | [[http:// |
- | | 准教授 | [[http:// | + | | 博士1年生 |
- | | 修士2年生 | + | | 修士2年生 |
- | | ::: | 青山 航 | AOYAMA Wataru | aoyama + @ipl.cs.uec.ac.jp | | + | | ::: | 岡本 憲汰 |
- | | ::: | 赤澤 亮弥 | AKAZAWA Katsumi | akazawa + @ipl.cs.uec.ac.jp | | + | | ::: | 小林 健吾 |
- | | ::: | 徐 振宇 | + | | ::: | 高橋 裕司 |
- | | 修士2年生 | + | | 修士1年生 |
- | | ::: | 櫻井 健二 | + | | ::: | 山本 武蔵 |
- | | ::: | 中川 涼太 | + | | 研究生 | 崔 博 |
- | | ::: | 早川 恵太 | + | |
- | | ::: | 山田 伊織 | YAMADA Iori | iyamada | + | |
- | | 修士1年生 | + | |
- | | ::: | 駒村 春野 | KOMAMURA Haruno | komamura + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 森田 浩平 | MORITA Kohei | morita + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 大町 一仁 | OOMACHI Kazuhito | oomachi + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | カオチェパオ ムアク | KAOJERPAO Muaku | + | |
- | | 修士1年生 \\ (中野研究室) | 阿部 和敬 | ABE Kazuhiro | abe + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 小澤 祐也 | OZAWA Yuya | ozawa + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 高橋 祐多 | TAKAHASHI Yuta | takahashi + @ipl.cs.uec.ac.jp | | + | |
- | | 学部4年生 \\ (岩崎研究室) | 浅見 祥喜 | ASAMI Yoshiki | asami + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 加藤 直斗 | + | |
- | | ::: | 近松 万由子 | CHIKAMATSU Mayuko | chikamatsu + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 西山 舜 | NISHIYAMA Shun | nishiyama | + | |
- | | 学部4年生 \\ (中野研究室) | 西野 謙吾 | NISHINO Kengo | nishino + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 宮澤 修 | MIYAZAWA Osamu | miyazawa + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 宮野 温 | MIYANO Atsushi | miyano + @ipl.cs.uec.ac.jp | | + | |
- | | ::: | 矢野 こずえ | + | |
[[alumni|卒業生一覧]] | [[alumni|卒業生一覧]] | ||
行 64: | 行 53: | ||
===== 研究テーマ ===== | ===== 研究テーマ ===== | ||
- | 岩崎研究室・中野研究室では,プログラミング言語にかかわるさまざまな話題,また,それらの言語を用いたシステムやソフトウェアを,主な研究対象としています.[[thesis|過去の学位論文一覧はこちら]]. | + | 岩崎研究室では,プログラミング言語にかかわるさまざまな話題,また,それらの言語を用いたシステムやソフトウェアを,主な研究対象としています.[[thesis|過去の学位論文一覧はこちら]]. |
現在の主な研究課題の概略は,次のようなものです. | 現在の主な研究課題の概略は,次のようなものです. | ||
- | |||
- | ==== 岩崎研究室 ==== | ||
=== プログラミング言語とその処理系 === | === プログラミング言語とその処理系 === | ||
- | 記号処理言語,関数型言語などを設計し,効率のよい処理系,使いやすいユーザインターフェース等を実現します. | + | 記号処理言語,関数型言語などに関して,言語設計,効率のよい処理系,使いやすい言語環境を実現する等の研究です. |
- | 最近では, | + | 最近では,関数型言語 |
- | サーバサイド向けJavaScript処理系と,その拡張 (マルチスレッド処理,実行時の最適化など)に取り組んできました. | + | |
=== ドメイン特化言語 === | === ドメイン特化言語 === | ||
行 82: | 行 68: | ||
=== 並列プログラミングシステム === | === 並列プログラミングシステム === | ||
- | ユーザに多大な負担をかけず,プログラムを高速,並列に実行するための方法を研究し,実並列計算機環境上に実装し効果を確認します. | + | ユーザに多大な負担をかけず,プログラムを高速,並列に実行するための方法の研究で,PC クラスタ,マルチコア計算機などの実並列計算機環境上に実装して効果を確認したり,理論的な考察を行ったりします. |
このようなシステムは,ユーザに並列性を意識させないので,「並列性忘却プログラミング」システムとも呼ばれます. | このようなシステムは,ユーザに並列性を意識させないので,「並列性忘却プログラミング」システムとも呼ばれます. | ||
- | 現在は,大規模なグラフデータを処理対象とする並列アプリケーションの開発を支援するシステム ([[http:// | + | 現在は,大規模グラフ処理を並列に行うための基盤となるシステム ([[http:// |
また以前には,スケルトン並列プログラミングのためのライブラリ[[http:// | また以前には,スケルトン並列プログラミングのためのライブラリ[[http:// | ||
- | このテーマは,[[http:// | ||
=== システムソフトウェア === | === システムソフトウェア === | ||
- | オペレーティングシステム(OS)など,計算機の根幹をなる一連のソフトウェア,またはそれらのソフトウェア上で力を発揮する応用プログラムを設計・実現します.最近では,プログラムの実行状況に応じてふるまいの異なる OS カーネル,それを用いたセキュリティ向上の研究などに取り組んでいます. | + | OS など,計算機の根幹をなす一連のソフトウェア ,またそれらのソフトウェア上で力を発揮する応用プログラムを設計・実現するという研究です. |
+ | 最近では,ディレクトリごとにモードの設定が可能なジャーナリングファイルシステム,仮想マシンモニタを利用したルートキット検出システム, | ||
+ | LinuxのI/ | ||
=== プログラム変換システム === | === プログラム変換システム === | ||
- | 与えられたプログラムを効率のよいプログラムに変換するための仕組およびシステムを研究しています.最近では主として,「構成的アルゴリズム論」という理論に基づき,余計な中間的データ構造を生成しないようにプログラムを変換することによって,プログラムの効率改善を図る方法について取り組んできました. | + | 与えられたプログラムを効率のよいプログラムに変換するための仕組およびシステムを研究するというものです. |
- | + | 最近では,「構成的アルゴリズム論」という理論に基づき,余計な中間的データ構造を生成しないようにプログラムを変換する方法,コンパイラによりループ本体を行列積の形式に変形して自動並列化を行う方法,XQueryというXML問い合わせ言語のプログラムを,Macro Forest Transducer | |
- | ==== 中野研究室 ==== | + | |
- | + | ||
- | === プログラミング言語処理系 === | + | |
- | 「プログラミング言語」と言われて皆さんがイメージするのはどのような言語でしょう? | + | |
- | C, Java, それとも他の言語でしょうか. | + | |
- | 世の中には何千ものプログラミング言語が存在すると言われています. | + | |
- | こんなにたくさんの言語が存在する理由は, | + | |
- | 目的や用途によって適した言語が異なるためです. | + | |
- | プログラミング言語処理系の研究では, | + | |
- | 従来のプログラミング言語に手を加えて目的に適した機能を追加したり, | + | |
- | 用途に合った小さなプログラミング言語を自ら開発したりすることを実現しています. | + | |
- | 既存のコンパイラの修正による実行プログラムの高速化にも取り組んでいます. | + | |
- | + | ||
- | === 関数型プログラミング === | + | |
- | 近年,関数型プログラミングとよばれるデータフローを明確にした | + | |
- | プログラミングスタイルが話題となっています. | + | |
- | 複数のビジネス誌に特集として取り上げられるなど, | + | |
- | 企業からの注目も高い研究分野です. | + | |
- | 実際,Google の検索エンジンで利用されていることで有名な MapReduce は | + | |
- | 関数型プログラミングのアイデアから生まれたものであり, | + | |
- | 膨大なメッセージの効率的な処理が必要な Twitter の実装も | + | |
- | Scala という言語を用いて関数型プログラミングによって実現されています. | + | |
- | 関数型プログラミングについての研究では, | + | |
- | より使いやすくするための解決方法を提案したり, | + | |
- | 実行効率を向上させるための新たな実装を開発したりしています. | + | |
- | + | ||
- | === プログラム検証 === | + | |
- | 皆さんは,講義や演習でプログラミングをするとき, | + | |
- | 正しく動作することをどのように確認しているでしょうか. | + | |
- | いろいろな入力でテスト実行してみたり, | + | |
- | プログラムの途中に print 命令を挿入して途中経過を観察したりしていませんか? | + | |
- | プログラムの検証は, | + | |
- | 「実行せずにプログラムの性質を知る」ための研究です. | + | |
- | 基本的にテスト実行では限られた数の入力しかテストできないため, | + | |
- | 本当に正しく動くかは保証されません. | + | |
- | 本研究では,全ての入力に対して正しく動作するということを数学的な手法で証明しているため, | + | |
- | より正確にプログラムの性質を知ることが可能になります. | + | |
- | + | ||
- | === プログラム変換 | + | |
- | 一般的に「短絡的に書いたプログラムは,読みやすい一方で効率が悪く, | + | |
- | 効率を良くするために工夫して書いたプログラムは, | + | |
- | 読みにくい上にデバッグもしにくい」というジレンマがあります. | + | |
- | 効率を意識したプログラムは,複雑なアルゴリズムを用いているため, | + | |
- | ちょっとした問題設定の変更に対してどのように修正すべきかは単純ではありません. | + | |
- | プログラム変換の研究では, | + | |
- | 短絡的に書いたプログラムを | + | |
- | 効率のよいプログラムに自動変換することを実現します. | + | |
- | これにより,読みやすく修正もしやすいプログラミングのもとで, | + | |
- | 効率の良い実行プログラムを得ることができます. | + | |
- | + | ||
- | === 形式言語理論 === | + | |
- | 講義などでオートマトンや形式文法などを勉強したことがあると思いますが, | + | |
- | 形式言語理論はそれらを深く探求する分野です. | + | |
- | 講義では何のために役に立つか分からないまま学習していたかもしれませんが, | + | |
- | プログラミング言語の分野では非常に重要なテーマです. | + | |
- | ここで挙げている研究テーマの中では最も理論的で数学的な素養が必要になりますが, | + | |
- | プログラムの検証から効率化にいたるまで, | + | |
- | さまざまなプログラミングの分野で応用可能な実用的な研究の1つです. | + | |
- | + | ||
- | === 双方向変換 === | + | |
- | 双方向変換系は,データベースを安全かつ効率的に更新するための研究です. | + | |
- | データベースから必要な情報だけを抽出して見やすく整形したものをビューとよびますが, | + | |
- | このビューの内容を修正することで, | + | |
- | その修正をデータベース側に反映してしまおうというのが双方向変換のアイデアです. | + | |
- | ここで「必要な情報を抽出して見やすく整形する」 | + | |
- | という部分を一つのプログラムで記述されていると考えると, | + | |
- | そのプログラムは, | + | |
- | データベースを入力としてビューを出力するものであると見なせます. | + | |
- | したがって,ビュー側の修正をデータベースに反映するためには, | + | |
- | このプログラムを逆方向に実行する必要があるわけです. | + | |
- | 双方向変換の研究では, | + | |
- | この逆方向の実行を自動化するための枠組みを対象にして, | + | |
- | 実現するための理論やその実用化に取り組んでいます. | + | |
===== アクセス情報 ===== | ===== アクセス情報 ===== | ||
行 183: | 行 96: | ||
=== 居室一覧 === | === 居室一覧 === | ||
- | ^ 役職 | + | ^ 役職 |
- | | 教員 | 岩崎 | 西9号館517号室 | 5336 | | + | | 教員 |
- | | ::: | 中野 | 西9号館615号室 | 5321 | | + | | 学生 |
- | | 学生 | --- | 西9号館518, | + | |
===== リンク ===== | ===== リンク ===== | ||
* [[http:// | * [[http:// | ||
- | * [[http://www.im.uec.ac.jp/intro-1rui/ | + | * [[https://www.c1.uec.ac.jp/ |
* [[http:// | * [[http:// | ||
- | * [[http:// | ||
* [[http:// | * [[http:// | ||
- | * [[https://syssectsukuba.wordpress.com/ | + | * [[https://syssec.cs.tsukuba.ac.jp/ |
+ | * [[https:// | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// |
public/start.txt · 最終更新: 2023/10/10 12:47 by iwasaki