この記事はDMMグループ'20卒内定者アドベントカレンダー15日目の記事です.
現在修士2年,プログラミング言語の研究室に所属していて関数リアクティブプログラミング (Functional Reactive Programming, FRP) というプログラミングパラダイムの研究をしています.修論も佳境!終わらない実装!ということで自己紹介がてらFRPの簡単な紹介でも書こうかなと思います.
関数リアクティブプログラミング(FRP)はリアクティブなソフトウェアの記述をサポートするプログラミングパラダイムです.
アプリケーションのUIや制御システムなど,外部からの入力に応答するようなソフトウェアの場合にはキー入力やセンサーの値などの非同期的な入力を処理する必要があります.非同期的な入力に対する処理はポーリング・コールバック関数・マルチスレッディングなどで実装されるわけですが,これらが組み合わさってくると実行の流れが把握しづらくなり,プログラムが複雑になってしまいます.