The First Cry of Atom Today is the first day of the rest of my life.

SBTを使ったプロジェクト作成(2)

スコープに関するお話 昨日の続き。 実はSettingKeyにはスコープがあり、異なるプロジェクトではことなる値を使うことができる。そもそも同じ場所に置くなよという気はするがテスト用とかリリース用にビルドしたい場合に便利。このビルドの設定を分けるスコープの”軸”がSBTには3つある。 プロジェクト コンフィギュレーション タスク プロジェクト軸によるスコープ それぞれのプロジェクトに対して設定が必要という場合がこのケース。ビルド全体(全プロジェクト)でもよい。 コンフィギュレーション軸によるスコープ ビルドの種類によるわけかた。テストとかリリース用とか、デバッグ用とか。 タスク軸によるスコープ 少しよくわからないけれど、他のタスクに影響を受けるようなスコープのこ... Read more

SBTを使ったプロジェクト作成(1)

SBT(Simple Build Tool)というScalaのビルドツールを使ってみる。 ここを参考にした。 インストール まずインストール。macの場合はHomebrewで用意されているみたい。 $ brew install sbt プロジェクトの作成 ひな形は自分で作る。ここではhelloプロジェクトを作ってみる。 $ mkdir hello $ echo 'object Hi { def main(args: Array[String]) = println("Hi!") }' > hw.scala $ sbt # ここで必要なパッケージとか勝手にインストールしてビルドしてくれるみたい > run ・・・ Hi! 複雑なことはまだたくさんあるけれど、... Read more

Scalaを使うことに

汎用人工知能の開発をするにあたって使う言語とかを考えていた。汎用人工知能(まだそれが何を意味するのか明瞭にはわかってない)で必要なスペックは次のものなのではないかなとあげてみた。 高速 並列処理に向いている 関数型(少なくとも副作用を前提としないプログラム) ここであげた条件には自分の好み、向き不向きが含まれているけれど漠然とした現状を考えるとこれが妥当なのではないかな。 高速であることはいうまでもない。多分CとかC++が一番よい。でもC、C++はメモリ管理とか大変そうで個人的にはデカイものを書くときには向いてない気がする。 並列処理に向いているというのは機械学習を行わせたいので今流行のMahoutもJubatusも並列で計算をおこなっているのでそれが向いているもの... Read more

Post Content Styles

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Some great heading (h2) Proin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, m... Read more