ラムダ計算とは
ラムダ計算とは、簡単に言ってしまうと関数だけから成り立つ計算モデルで、すべての計算可能な関数が表現でき、正しく評価できるものらしいです。
関数型言語の理解も深まるだろうということで、最近勉強しています。
やってみると、なかなか面白く、なるほどの連続です。
では、実際どのように表現できるのか見ていこうかと思います。
ラムダ計算とは、簡単に言ってしまうと関数だけから成り立つ計算モデルで、すべての計算可能な関数が表現でき、正しく評価できるものらしいです。
関数型言語の理解も深まるだろうということで、最近勉強しています。
やってみると、なかなか面白く、なるほどの連続です。
では、実際どのように表現できるのか見ていこうかと思います。
Geminiというのは、GoogleのAIで、Googleアカウントを持っていれば使えるものだったので、試しに使ってみました。
有料版は、より高性能なAIのようですが、とりあえずどんなものなのかを知りたかったので、無料のものを使っています。
Pythonでは、特殊メソッド(__eq__, __lt__, __gt__など)を実装することによって、比較演算子を使うことができるようになります。例えば、intはdir(int)
とすると、intの属性が表示されますが、その中に上記の特殊メソッドも含まれており、比較演算子を使うことができるようになっています。
Pythonにはint、strなど型はあります。しかし、Pythonには「この特殊メソッドを実装しているものは〇〇というグループである」というようなものはありません。
なので、作ってみました。
親父の死後、遺品整理をゆるゆると進めている流れで、自分の不要なモノも整理しようと、クローゼットのダンボールを開けていたところ、学生時代の教科書が出てきました。
経済学部だったので、経済原論、経済史、経営論など「あ〜やったな、こんな授業」といった懐かしい本がいっぱい入っていました。
懐かしく感じながら見ていると、なんとムイスリ出版社「Pascalの基礎」という3.5インチ2DDフロッピー付きの本が出てきました。
私はどうやら学生時代にPascalの授業を受けていたようです。