Scala

MacPorts で Scala 2.9 と Emacs の scala-mode を使えるようになるまで

$ sudo port install scala29すると、"-2.9" という postfix がついた処理系一式の他に、依存性解決で scala_select という port もインストールされるので、 $ sudo scala_select scala29で、処理系のそれぞれのコマンドがシンボリックリンクされて、scala,…

はてなアイデアが実装されました

そのうちきっと対応してくれるはず、と思って最初から >|scala|のように書いていたんで、Scala カテゴリーに書いたコードに色がつきました。うれしい。id:kmizushima さんとか、早速、試されてますね。しかし、もうずいぶん Scala のコード書いてないなー。…

昨日の Haskell 版 Unlambda を Scala で書いてみた

久しぶりに Scala ネタ。ほぼ、昨日のまんま。やっぱり .x, r, s, k, i だけ。 object Unlambda { abstract class Tree[T] case class Leaf[T](elm:T) extends Tree[T] case class Branch[T](l:Tree[T], r:Tree[T]) extends Tree[T] class Func(f:Func => Fu…

Scala で diff を書いてみた

練習問題ということで。うまくないところがたくさんあると思うので、添削してくださる方がいるとうれしいなぁ。 import scala.io.Source.fromFile class LCS[T] (a: Seq[T], b: Seq[T]) { type LCSPos = Tuple3[T, int, int] val a_ary: Array[T] = a.toArra…

さぁぶれっとを作ろう (5)

今度は webapps/servlets-examples/WEB-INF/classes/RequestInfoExample.java を Scala で書き直してみる。 import javax.servlet._ import javax.servlet.http._ class RequestInfo extends HttpServlet { override def doGet(req: HttpServletRequest, res…

SaclaTutorial.pdf を読みなおす (3)

A Scala Tutorial for Java programmers (pdf) について。 4 Everything is an object に書いてあること これも、まぁ表題通り。そういえばここで、in the sense that という熟語を覚えたんだった。 Scala is a pure object-oriented language in the sense …

さぁぶれっとを作ろう (4)

Java で HelloWorld ができたから今度は Scala でやる。といっても航海日誌さんの HelloWorldServlet.scala を写経するだけなので問題なく、…と思ったらそうはいかない。 java.lang.NoClassDefFoundError: scala/ScalaObjectですと。むむぅ。たしかに素の Ja…

SaclaTutorial.pdf を読みなおす (2)

相変わらず、Tomcat で HelloWorld ができていない。むぅ、ちょろっとやればできるもんだと思っていたんだけど。ので、ScalaTutorial (pdf) の続き。 3 Interaction with Java に書いてあること まぁ、表題通りなんだけど…。ここでのサンプルコードはこんな…

SaclaTutorial.pdf を読みなおす (1)

ホントは Tomcat で HelloWorld が動いたよー、ということを書きたかったんだけど、まだ動かせてないので (ヘボい) 別ネタ。Scala 関連で多分一番短くて一番易しい A Scala Tutorial for Java programmers (pdf) を読みなおしてみましょう、というお話。 1 I…

さぁぶれっとを作ろう (0)

少し前から Scala を覚えようとしている。そろそろチュートリアルを (ものすごいスローペースで) 眺めてるのも飽きてきて、なにか自力で作ってみたくなった。作るなら何かなぁ。やっぱり、簡単な Wiki あたりが手頃かなぁ。とか考えたところで、「あれ、Java…