新型コロナウイルスの感染がまたも拡大し、外出を控える人が増えてきた。自宅で何かできることを探している人は多いはずだ。中にはプログラミングを始めてみたい人もいるだろう。あるいは、プログラミングに関する新しい技術を身に付けたいソフトウエアエンジニアもいるかもしれない。
プログラミングを学ぶ際には、プログラミング言語の選択が重要になってくる。言語が異なると、プログラムの書き方が変わってくるからだ。
では、どの言語を学べばよいだろうか。最近はPython(パイソン)が人気で、Go(ゴー)やRust(ラスト)といった低レイヤーに強い言語も注目を集めている。ただ、「人と同じような言語を学ぶのはつまらない」と考える人もいるかもしれない。
そうした人にぜひお勧めしたいのが「Lisp(リスプ)」だ。数ある言語の中でも独自の存在感を放つ。現役バリバリでソフトウエアを開発しているプログラマーでも「いつかはLispが書けるようになりたい」と考える人は多い。いわば「プログラマーのあこがれ言語」なのだ。
多くのプログラマーがLispにあこがれるようになったのは、ある1本のエッセーがきっかけだ。米国の著名なプログラマーであるPaul Graham(ポール・グレアム)氏のエッセー「普通のやつらの上を行け」である。同氏はスタートアップ支援企業として有名な米Y Combinator(Yコンビネーター)の創業者としても知られる。このエッセーは書籍「ハッカーと画家 コンピュータ時代の創造者たち」(オーム社)に収録されているが、インターネットでも内容が公開されている。
グレアム氏はこのエッセーの中で、Lispを「今ある言語の中で最もパワフル」と表現する。それと同時に、プログラムの独特の見た目から敬遠されがちな言語でもある。このため同氏は、Lispを選択することで競争相手よりもはるかに優位に立つことができたという。
Windowsで使いやすい「DrRacket」
一口にLispといっても様々な種類がある。テキストエディター「Emacs(イーマックス)」のカスタマイズに使われる「Emacs Lisp」、Java仮想マシン上で動作する「Clojure(クロージャー)」などだ。中でもよく使われているのが、「Common Lisp(コモン・リスプ)」と「Scheme(スキーム)」の2つ。Common Lispは高機能ないわば「大きいLisp」、Schemeは機能が少ない、いわば「小さいLisp」である。
ここではSchemeを使うことにしよう。覚えることが少なくて済み、入門に適しているからだ。Common LispとSchemeは異なる点はあるものの似ている点も多く、どちらかをマスターすればもう一方もそれほど抵抗なく使えるようになる。
SchemeにはWindowsで手軽に使える開発ツールがあるというメリットもある。Lispベースの独自言語「Racket(ラケット)」の処理系に付属する「DrRacket」という開発ツールだ。
まず、ダウンロードページからRacketをダウンロードし、インストールしよう。
Racketのダウンロードページ(外部サイト): Download Racketインストールが終わったら、スタートメニューから「DrRacket」を選んで起動する。初回起動時に、メニューの「Help」から「DrRacketを日本語で使う」を選択しよう。これでDrRacketが日本語化される。