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

Scala でも travis-ci

travis-ci http://travis-ci.org/ という、githubと連携して、いわゆる CI(継続的インテグレーション)を簡単に行えるサービスがあります。 もともとRubyのみで始まったらしいんですが、現在はかなりの言語に対応していてScalaでも使えるんですね。*1たとえ…

build.sbt で seq を使って複数の値を追加することについての細かい話

ほぼすべての、sbt の plugin の README などにはこんな感じ*1で seq(assemblySettings: _*) seq というメソッド https://github.com/harrah/xsbt/blob/v0.11.2/main/Defaults.scala#L1094 を使って渡す*2ようにかいてありますが、実はこれ、単純に以下のよ…

yoroyoroさんが昔つくった、grassのparserをsbt pluginにしておいた

https://github.com/xuwei-k/grasshttp://d.hatena.ne.jp/yuroyoro/20100621/1277104092http://d.hatena.ne.jp/yuroyoro/20110601/1306908421https://github.com/yuroyoro/ProgramGenerator誰得・・・(´・ω・`)?誰か使ってください

sbt を理解するための sbt 自体のソースの読み方

sbt でわからないことがある場合、だいたい wiki をみる sbtのドキュメントはgithubのwikiからscala-sbt.orgに移りました! ソースを読む メーリングリストで質問する StackOverflowで検索 or 質問 というような選択肢になります。*1 それで、英語が微妙な自…

sbt の wiki を検索できるサイト

sbt

https://sbtwiki.backchat.io/自分が作ったのではないです、tweetが流れてきました https://twitter.com/#!/casualjim/status/193394611291557889sbt は 現状一番信頼出来て、詳細に書いてあるドキュメントは、github の wiki なのですが sbtのドキュメント…

github のプロジェクトのファイル一覧を表示するだけのサイトを作った

https://github.com/xuwei-k/githubtree http://githubtree.appspot.com/xuwei-k/githubtreeなんとなく思いついて、ついカッとなって数時間でつくったが、どれくらい使い道があるのか。 リポジトリ全体が、どういうフォルダ分け構成になってるのかなぁーって…

sbaz

sbaz はなくなりました!なんだか、(自分の観測範囲内で) sbaz が添付されていないとか、どこいったんだーとか言っている人が多いので、あえてこれだけのために blog を・・・。 詳しいことは知りません*1 が、 2.9.1-1だか2.9.2あたりから sbaz は入ってませ…

sbt のコンソールから SVN のコマンドをたたくだけの sbtsvn っていう sbt の Plugin を作った

https://github.com/xuwei-k/sbtsvn以前書いたこれsbt の Parser の機能使って、 sbt のシェルから git のコマンドを便利に(?)たたける誰得(?)なことをしてみたと仕組み同じ。svn のあとの commit とか add とかの2つめのコマンドの部分が補完効くっていうだ…

Scalaz6.0.4 で Range の Foldable の instance は供給されないのに、IndexedSeq[Int] に型変えるだけで成功する件

https://github.com/scalaz/scalaz/blob/v6.0.4/core/src/main/scala/scalaz/Foldable.scala しょうがないのかな? まぁ、ほんのちょっとの手間がかかるだけで、実用上それほど大きな問題ではないですが、なんとなく気になったので Scalazを直接いじって、も…

typesafe stack で sbt を入れると、build.properties を読み取って sbt の version を勝手に判断してくれる件を調べた

sbt.msiでJavaが無いと言われてインストールできないなー。Java7じゃダメだとか?2012-04-09 18:02:43 via Janetter @kxbmap 今なら生の sbt 入れるより Typesafe-stack 入れる方がお勧めっぽいです2012-04-09 18:04:47 via Echofon to @kxbmap @gakuzzzz Ty…

conscript で入れた sbt が動かない問題の原因の推測

http://d.hatena.ne.jp/seratch2/20120406/1333693373上記の手順の通り入れると、 ユーザーのホーム/.conscript/harrah/xsbt/sbt/launchconfigに以下のようなファイルができてる。 [scala] version: 2.9.1 [app] org: org.scala-tools.sbt name: sbt version…

Scala勉強会( #rpscala )の渋谷やめます

http://scala-users.org/shibuya1年半くらい前の2010年の9月くらいに始まって、(3.11の地震や年末年始などを除き)毎週やってきて、(渋谷と秋葉原あわせて)もう75回もやっている rpscala ですが、ちょっと渋谷の方は一旦やめようかと思います。 2011年9月くら…

sbt の Android Scala Plugin を Proguard 使わないように改造してみた

なんかplugin作りが楽しかっただけで、実用するか、ちゃんとメンテするのかかなりあやしいけれど、Android Pluginのソースコードリーディングと、sbt Plugin の勉強も兼ねて、とりあえずつくってみた https://github.com/xuwei-k/android-plugin/tree/no-pro…

自動で sbt の version をいい感じに切り替えてくれる sbt-extras というのを使い始めた

これ https://github.com/paulp/sbt-extrasきっかけは、 さくらのVPNが新しいプラン発表される ↓ 新しい方に申しこむ ↓ いままで使っていたものがそのまま移行できないらしいので手動で以降ェ・・・ ↓ 今まで sbt7 sbt10 sbt11 sbt12 ってそれぞれファイルつ…

Free Monad ってなんだろう

先日の渋谷での第74回Scala勉強会では、nescalaの資料を読んだのですが勉強会のwikiページそのなかで、この資料Dead-Simple Dependency Injectionにでてくる Free Monad について。勉強会中、とりあえずひと通り読んで、なんとなーく理解した後に 「あれ、こ…

Play Framework 2.0 ソースコードリーディングあるので sxr つくっておいた

Play Framework 2.0 ソースコードリーディングの会みなさん暇があれば予習しておきましょう http://xuwei-k.github.com/play-sxr/play-2.9.1-2.0こっちはzipでまとめてあるので、iPadなどにいれて読むと便利です、っていうか自分がそうするためにつくりまし…

AndroidのfindViewByIdで型推論(?)させて、ちょっとだけ記述量減らす方法

Javaの話です。Androidだと、普通xmlで画面を定義して、そのインスタンス生成するためにfindViewByIdというメソッドを使う。かなり多く使う。xmlで定義する時点で、型は(android.view.Viewのなんらかのサブクラスで)決まっているわけですが、それが必ず andr…

giter8はversion0.3.2から、lsを使って自動でデフォルト値にlibraryの最新版を指定できるようになってる件

version0.3.2って、このblogを書いてる時点からもう3ヶ月まえですが、今更気づいたというか。英語はわかるひとは、以下読みましょうhttps://github.com/n8han/giter8/blob/0.3.2/notes/0.3.2.markdown例えばこんな感じ https://github.com/softprops/unfilte…

はてなダイアリーで Haskell に関する新着のBlog記事をtweetするbotつくった

これつかっただけはてなダイアリーで Scala に関する新着のBlog記事をtweetするbotつくった

scala.collection.immutable.:: が実はimmutableではない件が気になったのでちょっとだけ昔のソース調べてみた

scala.collection.immutable.List is not immutable URL2012-03-11 17:06:13 via web @xuwei_k これは。varにする必然性はあるんでしょうかね。2012-03-11 18:01:58 via web to @xuwei_k :: の tail が var なのは ListBuffer のためだよね。どっちかという…

Scalaの標準ライブラリにNonEmptyListを組み込もうとして、とりあえず簡単にはできないことがわかったという話

これ Option.getとかFuture.getとかList.headとかunsafePerformIOとか最終的にCopointedとか色々 のこのあたり @rioter Cons.head is fine. /cc @dibblego @timperrett2012-03-06 08:21:30 via web to @rioter @viktorklang @rioter @timperrett Cons is not…

Scalaz の作者の人達が書いた "Functional Programming in Scala" という本がでるらしい

こちら↓もちろん英語ですよ。http://manning.com/bjarnason/

Scalaのソースコードを REPL 上で1行ずつ実行する build.sbt を書いた

Scala には REPL のテストをするための ReplTest っていうそのままの名前のクラスがあってhttps://github.com/scala/scala/blob/v2.10.0-M2/src/partest/scala/tools/partest/ReplTest.scalaこんな感じに使いますhttps://github.com/scala/scala/blob/v2.10.…

Scala 勉強会 72 回 ( Scalatra 読んだよ )

http://gist-slide.appspot.com/1992784/rpscala72 http://partake.in/events/4488e148-a614-49fd-bced-20fd896f4461 http://bit.ly/wF88Kd

はてなダイアリーで Scala に関する新着のBlog記事をtweetするbotつくった

説明めんどくさいので、仕組みを詳しく知りたい人はソース(と以下の以前の記事)読んでください。このまえのこれ http://d.hatena.ne.jp/xuwei/20120122/1327236550 をだいたいコピペ参考にしてて、ほとんど同じしくみです。ちゃんと生存監視とかしてないので…

Scala 2.9.1 と 2.9.1-1-RC1 の diff

build関係やtest関係のファイルを除くと、変更されているのはコンパイラ内部のscala/tools/nsc/backend/jvm/GenJVM.scalaというファイルのみhttps://github.com/scala/scala/compare/v2.9.1...v2.9.1-1-RC1#diff-11bridge (version間の互換性のための機能?) …

var を使っている式を渡すと、コンパイルエラーにしてくれる Scala の Macro

追記: これ Scala2.10.0-M2のときに書いたので、最新では動きませんよ・・・ マクロ楽しいですね( ^ω^)あまり大きい式で試してないけどこれでいいはず。なんだかちょっと長いけれど、もっと短い書き方わかった人いたら教えて下さい(・ω・`)

Scala の Macro を使って、コンパイル時にフィボナッチ数を計算してみた

つい数日前にでた、 Scala2.10.0-M2 から、( コンパイルオプションが必要ですが) macro が入っているので、使ってみました!もう、タイトルのままで、とにかくソース見てもらえば(ryhttps://github.com/xuwei-k/compile-time-fibonacci

sbt 0.12.0-M1 がでてた

このblog書いている時点では、まだなにもリリースのアナウンスされてませんが さり気なくtagきられてました。 追記: MLにアナウンスあったよhttps://github.com/sbt/sbt/tree/v0.12.0-M1

Casbah Dynamic for 3.x

以前こんなこと書いた MongoDB を Scala2.9の Dynamic の機能使って操作する ように、普通に便利に使ってるので、なくなってほしくはないですね。確かにまだ改善の余地はあるだろうけれどもtgtr.ExtendWidget({id:'254652',url:'http://togetter.com/'});