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

G500設定など

PC

買ってあったLogicoolのG500を使おうとして、設定でちょっとつまずいたのでメモ。 キーストロークの割り当てで、なぜかCtrlがちゃんと当たってくれなかった。 調べてみると、CtrlとCapslockを入れ替えているのがまずいっぽい。キーストロークに割り当てられ…

ファイル1

カレントディレクトリ内のbatファイルの行数を数えてみる。 scala> import java.io._ import java.io._ scala> import scala.io._ import scala.io._ scala> new File(".") getCanonicalPath res0: java.lang.String = C:\Users\rf\Documents\scala\bin scal…

関数合成

やってみる。 scala> val f1 = (a:Int) => a + 1 f1: (Int) => Int = <function> scala> val f2 = (a:Int) => a * 2 f2: (Int) => Int = <function> scala> val fs = List(f1, f2, f1, f1, f2) fs: List[(Int) => Int] = List(<function>, <function>, <function>, <function>, <function>) scala> (Function chain fs)(3) res31:…</function></function></function></function></function></function></function>

カリー化

おー。 scala> def add(a: Int, b: Int) = a + b add: (Int,Int)Int scala> add(2, 3) res0: Int = 5 scala> val add_ = Function.curried(add _) add_: (Int) => (Int) => Int = <function> scala> add_(2)(3) res1: Int = 5 scala> val inc = add(_: Int, 1) inc: (I</function>…

コマンドリスト

scala> List(() => println("a"), () => println("b")) foreach(_()) a b

無限リスト

作ってみる。 平方数 scala> val s = Stream from 1 map(x => x * x) s: Stream[Int] = Stream(1, ?) scala> s take 16 foreach(printf("%d ", _)) 1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 繰り返し scala> Stream from 0 map(x => x % 3 + 1)…

DFT

学部3年生がCで頑張ってる所。 scala> def dft(xs: List[Double]) = { | import java.lang.Math._ | val N = xs size; | for (k <- 0 until N) yield { | val as = for (n <- 0 until N) yield { | xs(n) * cos(2 * PI * n * k / N) | } | val bs = for (n <…

クイックソート

作ってみる。 scala> def qsort[T <% Ordered[T]](xs: List[T]): List[T] = xs match { | case List() => List() | case y::ys => | qsort(ys filter(_ < y)):::List(y):::qsort(ys filter(y <= _)) | } qsort: [T](List[T])(implicit (T) => Ordered[T])Lis…

わんくま名古屋勉強会#10

わんくま名古屋勉強会 #10 行ってきた! 話してきた! 時間半分余っちゃった! (´・ω・`)! 詳細は後で書く!(多分) 追記 てな訳で、初スピーカーやってきました。 やっぱ、喋るの早い、自分。 人前だと、想定してた速度の2倍近く早く話してしまう。 で、結…

総和と総積

ほー。 scala> (1 to 10).foldLeft(0)(_ + _) res52: Int = 55 scala> (0 /: (1 to 10))(_ + _) res53: Int = 55 scala> (1 to 10).foldLeft(1)(_ * _) res54: Int = 3628800 scala> (1 /: (1 to 10))(_ * _) res55: Int = 3628800 追記 scala> 1 to 10 redu…

チャー研

「謎のプログラマ」的な。 ☆「泉君、たなびたいことがあるんだ、ちょっと。」 ☆「一度でいいから、君のプログラムを。」 研「どうして君が?」 ☆「あこがれているんだ。関数型言語に。」 ☆「さぁ、早くプログラムを見せてくれ。」 ☆「一回きり見せてくれれば…

なんかのAA

「Scalaのプログラムが手続き型だった 直したい。。」的な。 ∧_∧ ( ゚ω゚ ) Scalaは任せろー var i = ... C□l丶l丶 var i = ... / ( ) やめて! (ノ ̄と、 i しーJ ∧_∧ ( ゚ω゚ ) ・・・・ C□l丶l丶 / ( ) ・・・・ (ノ ̄と、 i しーJ ∧_∧ ( ゚ω゚ ) i = …

続ジェネリックなmax

可変長版。 scala> def max[T <% Ordered[T]](elements: T*): T = elements toList match { | case List(x) => x | case x :: rest => | val maxRest = max(rest: _*) | if (x > maxRest) x else maxRest | } max: [T](T*)(implicit (T) => Ordered[T])T sca…

ジェネリックなmax

なんか難しい。 scala> def max[T](a: T, b: T)(implicit orderer: T => Ordered[T]) = if (a > b) a else b max: [T](T,T)(implicit (T) => Ordered[T])T scala> max(1, 3) res6: Int = 3 scala> max(10, 3) res7: Int = 10 scala> max(10., 3.) res8: Doub…

ソート

scala> List(3, 6, 2, 6, 3, 0, 5, 1) sort(_ < _) foreach print 01233566 ほー。

名前渡しパラメータ

面白い。 scala> def add(a: Int, b: Int) = b + a add: (Int,Int)Int scala> def aa() = { println("aa"); 1 } aa: ()Int scala> def bb() = { println("bb"); 3 } bb: ()Int scala> println(add(aa(), bb())) aa bb 4 scala> def add_(a: => Int, b: => In…

EclipseでScala

Scala IDE for Eclipse 入れてみる。Scala IDE for Eclipse EclipseでScalaプログラミング!

GitとHudson

入れてみようかなぁ。 Git入門 分散バージョン管理Git/Mercurial/Bazaar徹底比較 Hudsonを使ったアジャイルな開発入門

名古屋Scala第2回勉強会にいてきた

書くの遅くなったけど、先週の金曜に行ってきました。 名古屋Scala勉強会 Scalaスケーラブルプログラミング[コンセプト&コーディング] (Programming in Scala)作者: Martin Odersky,Lex Spoon、Bill Venners,羽生田栄一,長尾高弘出版社/メーカー: インプレス…

読了など 2

Evolving an embedded domain-specific language in Java 読み終わった・・・ jMockの歴史について。(何

読了など

プロダクティブ・プログラマ -プログラマのための生産性向上術 (THEORY/IN/PRACTICE) と、id:WK6 から借りた プレゼンテーションzen を読み終わった。 プロダクティブ・プログラマ -プログラマのための生産性向上術 (THEORY/IN/PRACTICE)作者: Neal Ford,島…

10月何も書いてない・・・ (ノ∀`)アチャー (ノ∀`)アチャー (ノ∀`)アチャー (ノ∀`)ノ∀`)ノ∀`)ジェトストリームアチャー

Switcher

http://insentient.net/ MacのExposeっぽいやつ。要Aero。

わんくま名古屋勉強会#9

行ってきましたー。(二日前) C++の凄い人たちが来てました。 C++TT持ってけばよかった。 うちの大学から3人ほど引っ張って行って、学生は4人かな〜とか思ってたけど、 なんと高校生が! 次回スピーカー・・・・?

アニメとDHMO

福島県で起きた少年による母親のバラバラ殺人事件。アメリカでは、未成年の凶悪犯罪の温床の1つに大量に血を流す残酷なテレビゲームなどのゲーム類が挙げられている。 私は、日本の未成年の凶悪犯罪が起こる背景として、「アニメ」の存在があると思う――。 …

全文コピー

vim

最初は、 ggVGyこうやってた。 範囲選択しなくてもいいことに気付いて、 ggyGこうなった。 で、最近は vimrc に nnoremap <C-a>y :%y<CR>ってなってる。</cr></c-a>

vim強化月間

vim

8月はvim強化月間。 とりあえず、下のコマンドを自然に使えるようになりたい。 "○〜、q○〜q、@○、:reg q:、@:、q/ m○、`○、:delm ○、:marks :b○、:badd 〜、:bd ○、:bn、:bp :args、:argdo、:bufdo、:windo、:tabdo C-e、C-y、C-f、C-b C-[

わんくま名古屋勉強会#8

明日はわんくま名古屋勉強会。 LTやります。 久々の4次元です。 ((((;゜Д゜)))

23歳

そういえば2日前は誕生日だった。 っといっても何か変わったとかそういうのはないなぁ。

トラックパッド

PC

ノートPC3 のトラックパッドの誤タッチが多くて、まともにキーが打てなかったのだが、Fn + F1 で 有効/無効 化できることが判明。