成らぬは人の為さぬなりけり

エンジニアライフをエンジョイする為のブログ

2012-01-01から1年間の記事一覧

Play2.0でsbtの独自タスクを定義する

sbtの独自タスク追加方法は、ググればちらほら出てくるのですが、 Playを使ったsbtの独自タスクの定義方法がよくわからず、 ちょっと苦労したので、メモします。 (苦労した、という程の事でもないのですが。。。) 今回の環境 OS : Mac OS X 10.7.5 Scala :…

プレースホルダは意外と難しい(その2)

前回、Scalaのプレースホルダについて書きました。↑の記事の後半に出てきた部分で大きな勘違いをしていたので、 訂正すると共に、学習し直したいと思います。 先日、@kmizuさんのブログで、プレースホルダについて書かれていたので、 参考にさせて頂きました…

すごいHaskellたのしく学んでみる-その9

今回のテーマは、、、 newtypeとdata 以上のテーマで、参ります。 newtypeとdata 「1つの型を取り、何かにくるんで別の型にみせかける」 というような事がしたい場合、 dataではなく、newtypeキーワードを使う事ができます。 例えば、このような場合 Prelude…

プレースホルダは意外と難しい

プレースホルダーは、関数の引数を省略して書けるものだと思っていました。結論からいうと、 プレースホルダはあくまで関数の部分適用をする物、 のようです。 ※自分の中ではそう理解した。。。具体的な例を挙げて、考えた事を説明していきます。 val list =…

すごいHaskellたのしく学んでみる-その8

今回はついにFunctorです。 正直、まだFunctorの利点がよくわかっていないですが、 とりあえず、書いてみようと思います。 今回のテーマは、、、 Functorとは? fmap ファンクター則 ApplicativeFunctor こんな感じでお送りしようと思います。 Functorとは?…

すごいHaskellたのしく学んでみる-その7

久々のHaskellです。 前回からの続きは「すごいH本」的にはIOの章なんですが、 この辺よりも、その次の章が面白かったので、 ブログに書くのはやめました。 と、いうわけで、今回のテーマは、、、 関数型問題解決法 逆ポーランド記法電卓 関数型問題解決法 …

メソッド引数とコンストラクタ引数のimplicitパラメータ

最近ずっとHaskellの話題だったんですが、今日はScalaです。最近少しずつ仕事でもScalaを使うようになってきて、 勉強しなおしてます。早速表題の件ですが、 class Hoge(val name:String) class Foo(implicit hoge:Hoge) implicit val hoge = new Hoge("hoge…

すごいHaskellたのしく学んでみる-その6

先週サボったので、二週間ぶりです。今日のテーマは、、、 データ型 レコード構文 型引数 型クラス 今までずっとオブジェクト指向でやってきた自分にとっては、 ここはなかなか理解しづらく、 未だに0から自分で書ける気がしない、、、 データ型 データ型と…

すごいHaskellたのしく学んでみる-その5

今回のテーマは、、、 カリー化 高階関数 RubyやScalaをやった事があるので、 カリー化、高階関数は、割りとすんなり入って来ました。 カリー化 Haskellでは、関数はデフォルトでカリー化されています。 Haskellの全ての関数は、公式には引数を一つ取ること…

すごいHaskellたのしく学んでみる-その4

(週1で更新するのがお決まりパターンになってきました。)今日のテーマは、、、 再帰 今日は一個のテーマで書いてみます。 Haskellでは繰り返し処理は再帰で書くようです。 再帰はたしかに読みやすいし、 コードが簡潔になるので、好きですが、 実行効率の…

すごいHaskellたのしく学んでみる-その3

前回から、しばらく経ちましたが、 なかなか読み進まなかったので、書いてませんでした。というのも、正直2章の内容を理解しきれなくて、、、 理解できないというか、イメージができないというか、 型クラスのインスタンスが型と言われても、 正直よくわか…

RubyでSkypeにメッセージを投稿(Mac専用)

githubのnotifyやjenkinsのrssを常に気にしていたいのですが MacのFireFoxのJenkinsRSSリーダーがどうも上手く通知してくれないし、 常にブラウザ開いているわけでもないので、 今仕事で常に開いているSkypeに通知するbotを作ってみようかと思いました。 Rub…

すごいHaskellたのしく学んでみる-その2

前回からの続きです。今日のテーマは… リスト内包表記 タプル 以上!短いw まずは、 リスト内包表記 リストのフィルタリング・変換、組み合わせを行う方法、だそうです。 リスト内包表記ってなんぞや、と最初は思いましたが、 やってみると非常にわかりやす…

すごいHaskellたのしく学んでみる-その1

勉強会に参加する事や、TL上でよく見る本だったので、買ってみました。 すごいHaskellたのしく学ぼう!作者: Miran Lipovača,田中英行,村主崇行出版社/メーカー: オーム社発売日: 2012/05/23メディア: 単行本(ソフトカバー)購入: 20人 クリック: 556回この…

jpmobileでiPhoneの絵文字対応

iPhoneの絵文字は iOS2.2から絵文字を扱えるようになりましたが、 当初はSoftbankのUnicodeマッピングになっていました。しかし、現在のiOS5.1ではUnicode6.0の絵文字が使用されているようです。Railsで、Opensocialのアプリを作っているのですが、 jpmobile…

Scala勉強日誌 - Actor

今日のテーマは「Actor」です。 チャット作ってみようと思って、Play2.0のサンプルにある WebsocketChatのコードを見ていたらActorが出てきて、 全く理解できずw そういえば、さらっと勉強して、すっかり忘れていたので ちゃんと勉強してみる事にしました。…

ORMを使う - Squeryl

最近Scala勉強してます。仕事ではここ半年以上ずっと、Railsなので、 ScalaではPlayを使ってみようと思い、始めました。ただ、ことDBアクセスに関してはPlay標準のAnormは、なんかしっくりこない、、、 ActiveRecord的な感覚で使えるORMは無いものか、と。色…

ifの条件式で代入もしてしまう

好みの問題なのかもしれません。 (と、思っているのは、自分の知識が浅いからかな?) 以下のようなコードがあったとします。 def hoge foo = Something.foo if foo foo.do_something end end こういう場合、私はこう書きたい。 def hoge if foo = Somethin…

人気のプラグラミング言語

最近、 TIOBE Software: The Coding Standards Company こんな事をやっている所があることを知り、 C#が上がってきている事を知って、 驚きと共に、嬉しい気持ちになった矢先。別の角度で、面白い事をやっていらっしゃる方がいらっしゃいましたので、 ご紹介…

case式の対象オブジェクトのメソッドの戻り値を条件に使用する

うん、タイトルだけだと、意味わからん、という感じかと、、、 わかるかな? なんて書いたらいいのか、悩んだので、 とりあえず、書いてみました。 コードで示した方が分かりやすいかと。 ※やりたいと思った事(以下のコードは間違ってます) case hoge when…