HaskellでWeb開発
プログラミング言語Haskellを使って、Web開発を行います。WebフレームワークにはYesodを使用し、Yesodの基本について調べていこうと思います。
Haskell自体については、正直こちらも初心者ですが合わせて勉強がてらやっていこうと思います。
開発環境
Ubuntu16.04で開発を行っています。
Yesodとは
Haskellで書かれたWebフレームワークです。XSSに強く、パフォーマンスも良いようです。またコンパイル言語のため、実行時エラーをコンパイル時エラーとして検出しやすいのも特徴の一つです。コンパイルさえ通ればとりあえず一安心です。詳しくは公式サイトを確認してください。
Stackとは
Yesodでの開発にあたって、Stackという開発ツールを用います。(なくてもYesodを使うことは可能です。)Stackとはそもそもなんなのか、というところからですが、Haskellのビルドツールのようです。
Haskellのビルドツール”stack”の紹介に詳しく書かれています。
バージョンとか依存関係とか面倒事を解消してくれるものらしいです。便利らしいのでStackを使っていきます。
導入手順
Yesodの公式サイトとStackでYesodを始める方法(公式)の通りにやるほうが確実のような気がしますが、これで動いたということで書き残します。
- Stackをインストール何はともあれStackを入れる。よくわからないけど入れれば良い。リンク先からOSに合わせてインストールします。
- テンプレートで新しいプロジェクトを作成しディレクトリ移動
$ stack new my-project yesod-sqlite $ cd my-project
my-projectはプロジェクト名なので適当なものを入力してください。
yesod-sqliteはプロジェクトのテンプレートの指定です。テンプレートは次のコマンドで確認できます。今回はSQLiteを使うのでこのようにしています。
$ stack templates
- Yesodのコマンドラインツールインストール
$ stack install yesod-bin cabal-install --install-ghc
少し時間がかかるかもしれませんが、しばし待ちます。あと警告が出るかもしれません。
WARNING: Installation path /home/user/.local/bin not found on the PATH environment variable
警告を無視するとビルドできなかったのですが、PATHを通してやれば動きました。
- ビルド
$ stack build
- サーバの起動
$ stack exec -- yesod devel
これで起動されました。サーバの終了には次のコマンドを入力します。
quit
- Webサイトを見るデフォルト設定がlocalhost:3000なのでブラウザで確認します。表示されれば導入完了です。
以上がYesodのインストールからサーバの起動までの流れです。あとはテンプレートのプロジェクトを参考にいろいろといじっていけばよいでしょう。次回はYesodでHelloWorldを表示させてみます。
参考URL
コメントを書く