2010-10-01から1ヶ月間の記事一覧
Javaのコレクションを取得してそれをScalaのコレクションに変換する方法ではまったのでちょっとメモ。 scala.collection.JavaConversions.asBuffer(/* ここにJavaのコレクション */) としたらうまく行きました。微妙に面倒くさいですね。 考察 そう考えてみ…
はじめに (10..1e4).grep(~(9..0).sum{"$it?"}).any''.&println anarchy golf - the source code を見ていたら見つけたのですが、Groovyってクロージャを引数として期待しているメソッドにクロージャインスタンスを渡した場合は自動でうまい感じに動くんです…
やってみた お題の内容 問題 output all the numbers from 3 to 100 without perfect square. (3から100の数値のうち平方数を除くものを出力せよ。) 期待値 [3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30,…
はじめに Gitは.gitフォルダにてメタデータをすべて取り扱うため、タイトルのように、ワーキングツリーを入れ子にできるのかな?と思って実験してみたらできたのでこの記事を書いています。 図にするとこんな感じ *1 一つめのワーキングツリーが青色のところ…
プログラミングお題の一覧はこちら※みなさんもこのお題をお気に入りの言語で解いてみて下さい。解いたらこの記事にトラックバックをお願いします。 説明 二つのリスト(左・右)の内容を比較し、片方にしかないものと両方に在るものを出力するプログラムを書…
はじめに ちょっと気になってた言語なのでひとまずインストールまでやってみたのでメモです。 インストール 環境 Mac OS X 10.6.4 portsで管理されてるかな?? $ port search ioke No match for ioke found なんと!無いのか。 じゃあ、本家からダウンロー…
はじめに GroovyはほにゃららBuilderが充実していますが、ちょっとだけ不満点を挙げるとしたらそれはコードに直接埋め込まなければいけないことではないだろうか。 new HogeBuilder().aaa { bbb (ccc: 'ddd') { eee() { . . . } } } こんな感じに。 そこで …
はじめに 文字列をevalする例です。 ソース (動作確認: Groovy Version: 1.7.5 JVM: 1.6.0_20) 解説 BindingはmapをasすればOKみたい。便利ですね。 上記例でinfoとなっているところを外部ファイルから読み込んだりすれば夢が広がります。 2011-03-27追記 評…
はじめに v1.7.3からString#stripMarginが追加されたので、先頭にパイプ('|')など*1を指定することで揃えることができるようになりました。 '''|aaa |bbb |ccc'''.stripMargin() みたいな感じで書くと aaa bbb ccc といった感じになります。 まぁ、これはこ…
プログラミングお題の一覧はこちら※みなさんもこのお題をお気に入りの言語で解いてみて下さい。解いたらこの記事にトラックバックをお願いします。 説明 1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに 'Fizz' と、5の…
※当記事はNAVERまとめに移行しました。(2012-04-14) 今後はNAVERまとめの方でメンテしてゆきますので、 よろしくお願いします。 JVM (Java Virtual Machine)上で動くプログラミング言語が増えてきたのでここらへんでまとめて行きたいと思います。新しいのを…
はじめに MacPortsでGaucheをインストールしたのでコマンドをメモ。 インストール 環境 Mac OS X 10.6.4 前提 snow leopardの場合はbuild_arch=i386とする必要があるらしい 依存するlibiconv,gdbmを+universalでビルドし直す必要があるらしい コンソール $ s…
はじめに もう、追加したんなら言ってよぉ〜(笑) ということで、v1.7.3から追加されてたみたいです。前に自分でtrコマンドを書いたりしてたんですが標準サポートされるなんて嬉しい限り。ということで早速使ってみた。 ソース (動作確認: Groovy Version: …
これは… id:orangecloverさんが Groovyでdef関数からdef関数が呼び出せないのか? - みちしるべ でいろいろと困っているようだったんですが、この症状は私もなったことがある。 groovyshでdefを使うとスコープが(たぶん)その行だけになる $ groovysh Groovy …
プログラミングお題の一覧はこちら※みなさんもこのお題をお気に入りの言語で解いてみて下さい。解いたらこの記事にトラックバックをお願いします。 説明 テストドリブン開発が主流になってきていますね。そこで各言語でJUnitのようなテストを実装して下さい…
プログラミングお題の一覧はこちら※みなさんもこのお題をお気に入りの言語で解いてみて下さい。解いたらこの記事にトラックバックをお願いします。 説明 古のお題。 解いてみた Groovyで解いてみた (2010-10-12更新) Javaで解いてみた (2010-10-12更新) Scal…
はじめに 最近関数型言語をよく目にする機会が増えたので、Groovyでは#inject(左畳み込み)はあるけど、そういえば右畳み込みがないんじゃない?と思ってCollectionを拡張してみました。 ソース (動作確認: Groovy Version: 1.7.5 JVM: 1.6.0_20) 解説 metacl…
はじめに ちとタイトル分かりにくいですが、せっかく書いたので投稿しておく。 ソース (動作確認: Groovy Version: 1.7.5 JVM: 1.6.0_20) 解説 動的に作った文字列でメソッド呼べるよね〜っていうサンプルでした。
はじめに ライフゲームをなんとなくGroovyで書いてみました。 ソース (動作確認: Groovy Version: 1.7.5 JVM: 1.6.0_20) スクリーンショット グライダー(初期状態) shape.txtをいじった状態 実行方法 >groovy lifegame.groovy 操作方法など エラー処理などさ…
♪右から、右から、カレー化しちゃ〜う〜 ええ、ちょっと古いネタでした。いつのまにやらGroovyのClosureメソッドで#rcurryやら#ncurryやらできるようになってました。*1 軽い説明 メソッド 説明 #curry 普通のカリー化(左から) #rcurry 右からカリー化 #ncur…
はじめに クロージャ(groovy.lang.Closure)を引数にとって、途中の処理を委譲するようなメソッドを定義し、呼び出し時にブロックのように呼び出すことはGroovyでは普通に行われます。 ただ、通常では#callメソッドに渡す引数がクロージャ内で -> の前に列挙…