HIMMELの開発飽きてきたー。というわけで、ちょっと横道に逸れてAdaを勉強中。うー、Alogl系っぽい表記は見てて疲れる。Rubyもそうだけど、endだとブロックが分かりにくいな。Rubyはともかく、Adaに限ってCっぽい方言が有るとは思えないし、慣れるしかないんだけど。
で、GNATのgnatmakeを使ってコンパイルしてみる。Lovelaceの「Hello, world!」が通ったので、CGI用のライブラリを使ってウェブ版「Hello, world!」に挑戦。
with CGI, Text_IO;
use CGI, Text_IO;
procedure Hello is
begin
Put_CGI_Header("Content-type: application/xhtml+xml");
Put_Line("<?xml version=""1.0""?>");
Put_Line("<!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.1//EN"" ""http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"">");
Put_Line("<html xmlns=""http://www.w3.org/1999/xhtml"">");
Put_Line("<head><title>CGI in Ada</title></head>");
Put_Line("<body><p>Hello, world!</p></body>");
Put_Line("</html>");
end Hello;
コンパイルしてApache経由で呼んでみると――おお、動いた! XREA上では動かないみたいだけど、これってクロスコンパイル(よくわかってない)すれば動くのかな? それともAdaは禁止なのかな。バイナリって判別できるんだっけ。
さて、IDEはどうするかな。Windows版GPSを試してみたけど、微妙に挙動不審なので使いたくないし。Eclipseのプラグインを探してみるとADTとかいうのが有るらしいんだけど、有るらしい、という情報だけで、ファイル自体が見つからない。開発元のサイトにも置いてないし。む?
"In space, no-one can press CTRL-ALT-DEL"
But with Ada, you don't have to.
Linuxな環境が欲しいな。Cygwinでごにょごにょしてみようか。