第2回 Gaucheでプログラミング

吉田 裕美
有限会社イーワイオフィス

2008/12/17

Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう(編集部)

 今回は、Gaucheを初めて使ってみようという方に向けて、Gaucheのインストールと、簡単なプログラムを題材に、どうやってGauche(Lisp)流のプログラムを書いていくかを取り上げてみます。

Gaucheのインストール

- PR -

 GaucheはApacheやRubyと同様にオープンソースのソフトウェアですので、自分でダウンロードしインストールする必要があります。

 GaucheのWebサイトのダウンロードページから最新のソースを取得できます。現在のところサポートされているOSはUNIX系が中心で、Windowsではすべての機能を使うことができません。この連載でも、Mac OS Xを含むUNIX系のOSで動かす前提で進めていきます。

 Gaucheのインストールは、ソースをダウンロードしてコンパイルするのが基本ですが、いくつかのOSでは簡単にインストールできるパッケージが用意されています。筆者が知っているものには以下のようなものがあります。

  • UbuntuなどのDebian系のLinux:sudo apt-get gaucheでインストールされます
  • Mac OS X のPorts:sudo port install gaucheでインストールされます

 ただし、これらのパッケージは最新版ではないことがあるので注意してください。この原稿を書いている(2008年12月6日)時点で最新版のGaucheは8.1.4ですが、Debianでは8.1.2、Portsでは8.1.3がインストールされます。この程度の差であれば、この連載では問題ないと思います。

関連リンク:
リンク Gauche - A Scheme Interpreter
http://practical-scheme.net/gauche/index-j.html

ソースコードからのインストール

 ソースコードからのインストールは、ApacheなどのC言語で書かれたオープンソースのソフトウェアと同様の手順です。

% wget http://prdownloads.sourceforge.net/gauche/Gauche-0.8.14.tgz
% tar xzf Gauche-0.8.14.tgz
% cd Gauche-0.8.14
% ./configure
% make
% make check

 make checkの実行結果の最後が以下のように0 failed, 0 abortedとなっていれば無事にGaucheがmakeできています。エラーが出ている場合は、エラーメッセージを注意深く読み、分からなければネットで情報を検索して、不足しているソフトウェアをインストールしたり環境を調整したりしてください。

Total:  9403 tests,  9403 passed,     0 failed,     0 aborted.

 後はインストールすれば終了です。

% sudo make install

 Gaucheのコマンド名はgoshです。-Vオプションを付けてインストールされたGaucheのバージョンを確認してみましょう。

% gosh -V
Gauche scheme interpreter, version 0.8.14 [utf-8,pthreads]

Windowsでのインストール

 ダウンロードページから実験版をインストールできます。ファイルIOやネットワーク、RDBなどのないSchemeのプログラミングを行うことはできると思いますが、この連載で作るコードには動かないものが出るかもしれません。

 それよりは、VMware PlayercoLinuxを使ってLinuxをWindows上で動かし、そこにGaucheをインストールすることをお勧めします。UNIX系のOSに不慣れな方は多少苦労するかもしれませんが、UNIXの知識はソフトウェア技術者には必要なものですし、@ITにもたくさんの記事がありますので、ぜひトライしてみてください。

 
1/4

Index
Gaucheでプログラミング
Page1
Gaucheのインストール
ソースコードからのインストール
Windowsでのインストール
  Page2
goshコマンドを使ってみる
REPLで使う
Gauche-readlineのインストール
rlwrapを使う
  Page3
Emacsを使う
Schemeモードを試す
Gaucheのドキュメント
  Page4
日付から曜日を求めるCGIプログラム
CGIユーティリティを活用する

Gaucheでメタプログラミング

 Coding Edgeお勧め記事
いまさらアルゴリズムを学ぶ意味
コーディングに役立つ! アルゴリズムの基本(1)
 コンピュータに「3の倍数と3の付く数字」を判断させるにはどうしたらいいか。発想力を鍛えよう
Zope 3の魅力に迫る
Zope 3とは何ぞや?(1)
 Pythonで書かれたWebアプリケーションフレームワーク「Zope 3」。ほかのソフトウェアとは一体何が違っているのか?
貧弱環境プログラミングのススメ
柴田 淳のコーディング天国
 高性能なIT機器に囲まれた環境でコンピュータの動作原理に触れることは可能だろうか。貧弱なPC上にビットマップの直線をどうやって引く?
Haskellプログラミングの楽しみ方
のんびりHaskell(1)
 関数型言語に分類されるHaskell。C言語などの手続き型言語とまったく異なるプログラミングの世界に踏み出してみよう
ちょっと変わったLisp入門
Gaucheでメタプログラミング(1)
 Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう
  Coding Edgeフォーラムフィード  2.01.00.91

TechTargetジャパン

Coding Edge フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

キャリアアップ

@IT Sepcial

イベントカレンダー

PickUpイベント

- PR -
もっと見る

お勧め求人情報

ホワイトペーパーTechTargetジャパン

@IT Sepcial
ソリューションFLASH