Clojureに入門する(4)

Clojureに入門したのは良いけどコードをまったく載せていなかったため、何かコードを書きます。

以下のサイトでCSVファイルを扱う例があったので、ためしたコードを載せます。

fscoward.hateblo.jp

記載者様と同様に clojure-csv というライブラリを使わせていただきました。

[clojure-csv/clojure-csv "2.0.1"]

ファイルからCSVデータを持ってくるのが面倒だったため、defしてます。

(ns parse-csv-example.core
  (:require [clojure-csv.core :refer [parse-csv]]))

(def keys "000,111")
(def vals "aaa,bbb")

(let [key-seq (flatten (parse-csv keys))
      val-seq (flatten (parse-csv vals))]
  (map #(str %1 " : " %2) key-seq val-seq))
;;=> ("000 : aaa" "111 : bbb")

最初flattenに気づかず記事を投稿された方と同じ結果になってしまいましたorz。

Clojureに入門する(3)

Clojureのコードを書きたいのでLeiningenプロジェクトを作成します。

Leiningenプロジェクトはleinコマンドを使用して作成します。

$ lein new new-project

Leiningenプロジェクトの名前はとりあえず「new-project」にしました。

$ tree new-project/
new-project/
├── CHANGELOG.md
├── LICENSE
├── README.md
├── doc
│   └── intro.md
├── project.clj
├── resources
├── src
│   └── new_project
│       └── core.clj    # ここにClojureプログラムを書く。
└── test
    └── new_project
        └── core_test.clj

新規プロジェクト作成後はIntelliJからコードを編集できるようにプロジェクトのインポートを行います。

以下のサイトを参考にLeiningenプロジェクトをインポートしてください。

その他、IntelliJの設定も有益なものばかりですので合わせて設定してください。

IntelliJ IDEA と Cursive で始める — Clojure の日本語ガイド

私はこちらのサイトを参考にさせていただき、左側にエディタ画面、右側にREPL画面がくるように調整しております。

Clojureに入門する(2)

Mac OS X(OS X EI Capitan 10.11.5)にIntelliJ IDEAをインストールします。

$ brew cask install intellij-idea

そうすると、intelliJアプリが使えるようになりますが、CursiveプラグインがインストールされていないとClojureが使えません。

以下のサイトを参考にCursiveをインストールします。

Cursive: Getting Started

これでLeiningenプロジェクトを作成できます。

次回はLeiningenプロジェクトを作成します。

Clojureに入門する(1)

Mac OS X(OS X EI Capitan 10.11.5)にLeiningenをインストールします。

$ brew install leiningen

そうすると、leinコマンドが使えるようになりますが、javaがインストールされていないと使えません。

以下のコマンドでjavaをインストールします。

$ brew cask install java

これでleinコマンドが使えるようになります。

次回はClojureでプログラミングするためにIntelliJCursiveをインストールします。