Open3

[Scrap] Lisp に入門する

へぶんへぶん

以前から Kawai Shiro さんの影響で Lisp の存在は知っていたけど、使い道がない気がしてやる気はなかった。
最近木構造を作るプログラミングに片足を突っ込んでいて学習したいと考えていて、シンプルな文法で色々な表現ができそう & 情報科学的な教材が多い Lisp に入門してみようと思った。

流行ってる Rust や、現在でもファンが多い Hakell も気になったけど、覚えることが多そうな気もするし、直感を信じて Lisp に入門してみる。

Kawai Shiro さんが書かれた Lisp 本があったので取り組んでようと思う。
https://www.oreilly.co.jp/books/9784873115870/

へぶんへぶん

Common Lisp の setup

Common Lisp のインストール

$ brew install clisp

VSCode の拡張

auto complete 欲しいけど見つからなかった。また今度探そう

へぶんへぶん

Lisp のプログラムの読み込み方は 2種類ある。

コードモード(フォーム)

シングルクォーテーションが付いていない時は form として扱われる。
以下の場合は、かっこで囲まれた list 内の一つ目の要素が暗黙的に + が関数と見做される。

(+ 2 4)

データモード

シングルクオートをつけると、データとして扱われる。以下では expt が関数ではなく文字列として扱われる。

'(expt 2 3)