白鴎大学 HAKUOH UNIVERSITY

経営学部

教員紹介詳細

教員氏名 佐藤 伸也(サトウ シンヤ)
職名 准教授
最終学歴・学位 イギリス サセックス大学大学院エンジニアリング・インフォマティクス研究科インフォマティクス専攻博士課程修了 PhD
専門分野 情報学基礎、ソフトウェア、情報学基礎理論
学協会活動 Association for Computing Machinery
【主な著書・論文等】
【専門研究】
Shinya Sato, Conditional Nested Pattern Matching in Interaction Nets, Proceedings 13th International Workshop on Developments in Computational Models, Electronic Proceedings in Theoretical Computer Science, Vol. 408, October 2024.

Ian Mackie and Shinya Sato, An Interaction Net Encoding of Gödel's System T - Declarative Pearl, Functional and Logic Programming - 13th International Symposium (FLOPS 2016), Lecture Notes in Computer Science (LNCS), Vol. 9613, pp. 80--93, Springer, 2016.

A. Hassan, I. Mackie and Shinya Sato, An Implementation Model for Interaction Nets, in post-proceedings of the 8th International Workshop on Computing with Terms and Graphs, Electronic Proceedings in Theoretical Computer Science (EPTCS), Vol.183, pp.66-80, 2016.

【教育系の研究】
学びへの動機付けと意欲向上への取り組み―リベラルアーツ理工系選択科目「計算機科学への招待」を対象として―, 茨城大学 全学教育機構論集, 大学教育研究,第3巻, pp.139-153, 2019.

◆◆◆◆◆ その他 研究内容・学生へのメッセージ ◆◆◆◆◆

【問題関心】
・並列処理向けプログラミング言語の開発
並列処理が簡単に行えるプログラミング言語をインタラクションネットというグラフ計算を応用して開発しています。ぼちぼちと良い結果が出始めているところです:
https://github.com/inpla

・ICT の教育への利用
ICT(情報通信技術)を上手に使って、教育を効果的に行う手助けができないかと考えています。最近では、若者の PC 離れ(?)から以前と比べるとタイピングが上手にできなくなっているという傾向がみられますので、昔ながらのシンプルなタイピングトレーニングがウェブで簡単に使えたら良いなと思い、HTML5 + JavaScript で作成しています。よろしければ試してみてください(感想も聞かせてもらえるととても嬉しいです):
https://typing.satolab.com/

・システム開発
事務処理などを自動化するときに Python をよく使いますが、誰かに使ってもらうためには GUI にして渡したいところです。GUI 込みで、なるべくお気楽にシステム開発が行える方法として、今のところは Python + PySide2 が私の定番です。最近では、事務処理とは異なりますが、授業で使っている仮想プログラミング言語 While を Python で実装しており、PySide2 を使ってエディタ付きの GUI で配布しています(下記URLを参照)。事務処理に関しては、今後は ChatGPT と連携させてさらにお気楽にできたら良いなと時々考えています。
https://github.com/sintan310/while-interpreter

・AI の最近の動向
目まぐるしく発展している AI と、どのように付き合っていけば良いのか興味を持って見ています。特にChatGPT などの文章生成 AI は困ったときの相棒のように使っていまして、最近はプログラミング演習にてティーチングアシスタントとして使っており、受講生がプログラミングでエラーが出ているときの相談役としてとても役に立てています。

【現在の研究テーマ】
プログラミング言語と論理学との関係を応用し、市販されているマルチコアCPU の PC にて並列処理が簡単に実現できる新しいプログラミング言語 Inpla を開発しています:
https://github.com/inpla

【学生へのメッセージ】
プログラミングの向き不向きは受講生の興味や専攻にも依りますが、プログラムが指示通りに動いたときの喜びは、みな同じではないかと感じています。プログラミングには数学のセンスが必要と言われますが、それは問題の中から共通するパターンを見つけて解決の手順を考案する能力に他なりません。勝ちパターンを見つけて問題に適用し、うまく行かないときには何が悪いのかを考察し、修正して再挑戦してみる。授業では、実際にコンピュータを使う場合でも使わない場合でも、このような解法を考える力を養うことを目標にしたいと考えています。