uehaj's blog

Grな日々 - GroovyとかGrailsとかElmとかRustとかHaskellとかReactとかFregeとかJavaとか -

「Groovyスクリプト100本斬り」回顧編

2010年のJGGUG合宿で、

企画Groovy: 「Groovyスクリプト100本斬り」
お題(公募中!)を事前に100個用意しておき、みんなでスクリプトを書きまくります。
詳細はこちら:http://www.jggug.org/Home/ibento-shiryoushuu/g100pon.pdf

というのがあったのですが(良い企画でしたね!)、結果がGoogle Docsでしか公開されておらず、HTMLの記事になってると良いかと思い再掲します。


番号お題提案者(Twitter ID)回答者(Twitter ID)回答へのリンク(GistのURL)
1HelloWorld(Java完全互換版)kazuchikakazuchikahttp://gist.github.com/618307
2リスト操作(基礎編:CRUD系操作とイテレーションkazuchikaKentaro_Araihttp://gist.github.com/619102
3リスト操作(上級編)kazuchika
4マップ操作(基礎編:CRUD系操作とイテレーションkazuchikaKentaro_Araihttp://gist.github.com/619116
5マップ操作(上級編)kazuchika
6範囲(Range)操作(基礎編:CRUD系操作とイテレーションkazuchikaKentaro_Araihttp://gist.github.com/619233
7範囲(Range)操作(上級編)kazuchika
8Groovy Ustream APInemo_kazikikkohttp://gist.github.com/619452
9Jakarta POI のGroovyサンプルnemo_kaznobeanshttp://gist.github.com/619324,
http://gist.github.com/619325

10Google Calendar API の Calendar ObjectのGroovy Wrapperサンプルnemo_kaz
11Twitter: stream APIを有効活用したサンプルnemo_kaz
12Twitter: OAuthの認証サンプルnemo_kaztomoakioshimahttp://gist.github.com/619818
13gmailからメールを受信するkompironbqxhttp://gist.github.com/619274
14twitterにつぶやくkompirokazuchikahttp://gist.github.com/619087
15Markdownの実装kompirotomoakioshimahttp://gist.github.com/619068
16wikiの実装kompiro
17テンプレートエンジンの実装kompiro
18単位変換kompirokijukyhttps://gist.github.com/1145165
19為替情報の取得kompironemo_kazhttp://gist.github.com/619226
20topコマンドの実装kompironemo_kazhttps://gist.github.com/711401
21正規表現:ファイルの拡張子を置換するmasanobuimaitomoakioshimahttp://gist.github.com/619042
22正規表現FQCNからクラス名を抜出すmasanobuimaimasanobuimaihttp://gist.github.com/621826
23ディレクトリを走査して特定のファイルを抽出masanobuimaitomoakioshimahttp://gist.github.com/619059
24grepmasanobuimaimasanobuimaihttp://gist.github.com/621842
25tail -fmasanobuimaikazuchikahttp://gist.github.com/619953
26文字列を分割してListに変換masanobuimainobusuehttp://gist.github.com/619000
27ファイル名の一括置換masanobuimaimasanobuimaihttp://gist.github.com/619348
28ファイル内の特定の文字列を一括置換masanobuimaimasanobuimaihttp://gist.github.com/619303
29growlみたいなの(あんのか?)masanobuimainobusuehttp://gist.github.com/619816
30ファイルのコピーmasanobuimaikazuchikahttp://gist.github.com/619010
31アプリケーションランチャ(quicksilverみたいやつ)nbqx
32文字コード判定nbqx, kanemukanemuhttp://gist.github.com/619125
33掲示板kanemukiy0takahttp://gist.github.com/713740
34メール送信kazuchika
35インライン要素を含むXMLの処理kanemu
36ファイルをドラッグ&ドロップできるウィンドウkanemumasanobuimaihttp://gist.github.com/619202
37GDKのコマンドラインビューアnobeansuehajhttp://gist.github.com/619360
38(定期的な)メールチェッカ(POP)nobeans
39JSONの読み書き。Grails無しでtoby55kijkanemuhttp://gist.github.com/619030
40XMLの読み書きを色んな方法でtoby55kijnobusuehttp://gist.github.com/619066
41スクリプトを実行するスクリプトtoby55kijnbqxhttp://gist.github.com/619331
42お手軽JMXビューアbikisukenobusuehttp://gist.github.com/619284
43zip圧縮・解凍bikisuketomoakioshimahttp://gist.github.com/619011
44DBとテーブル名を引数に実行すると、標準入力から読み取ったCSV/TSVデータを指定したテーブルにinsertするスクリプトuehajnobusuehttp://gist.github.com/619054
45日時の演算処理。例えば「現在時刻の3日と4時間後を求める」「特定の時刻間の時間数を求める」nobusuekazuchikahttp://gist.github.com/619359
46wc コマンドtouchez_du_boiskiy0takahttp://gist.github.com/619085
47クイックソートtouchez_du_boisfumokmmhttp://gist.github.com/211632
48find コマンドtouchez_du_bois
49閏年touchez_du_boisnobusuehttp://gist.github.com/619200
50回帰分析touchez_du_boisnobusuehttp://gist.github.com/619868
51KVSの操作(保存、取得)kimukou_26nobusuehttp://gist.github.com/619988
52XMLDB(existが一番簡単かな?)の操作kimukou_26kimukou_26http://gist.github.com/622392
53いろいろな型変換(toメソッド、キャスト、as)kazuchikatoby55kijhttp://gist.github.com/619996
54duck typingkazuchikakazuchikahttp://gist.github.com/619806
55マルチメソッド(動的ディスパッチ)kazuchikafumokmmhttp://gist.github.com/619899
56数値型(Javaとの相違点など)kazuchikatoby55kijhttp://gist.github.com/619061
57GStringが遅延評価ぽくなるケースkazuchikanobeanshttp://gist.github.com/619334
58StringクラスのGDKメソッドkazuchikatoby55kijhttp://gist.github.com/619851
59正規表現(基本編)kazuchikaikikkohttp://gist.github.com/619363
60fizzbuzzkazuchikanemo_kazhttp://gist.github.com/618993
61GroovyTestCaseと各種拡張assertメソッドkazuchikafumokmmhttp://gist.github.com/622492
62Groovy Truthのカスタマイズkazuchikauehajhttp://gist.github.com/619374
63演算子オーバーロードkazuchikaikikkohttp://gist.github.com/619990
64クロージャとdelegatekazuchikatouchez_du_boishttp://gist.github.com/620045
65何でも使えるぜGroovyなswitch-casekazuchikatoby55kijhttp://gist.github.com/619088
66Expando使用例kazuchikatoby55kijhttp://gist.github.com/619889
67実行中のクラス/メソッド名を取得kazuchikanemo_kazhttp://gist.github.com/619034
68curry/rcurry/ncurrykazuchikafumokmmhttp://gist.github.com/619285
69動的なメソッド追加kazuchikanbqxhttp://gist.github.com/619342
70存在しないメソッド/プロパティアクセスをフックkazuchikatoby55kijhttp://gist.github.com/619113
71ConfigSlurperkazuchikakimukou_26http://gist.github.com/622497
72テキストファイルの中身を行番号付きで表示kazuchikatomoakioshimahttp://gist.github.com/619026
73AntBuilderkazuchikakazuchikahttp://gist.github.com/619985
74日付の解析とフォーマットkazuchikanobusuehttp://gist.github.com/619111
75外部コマンドの起動と出力の取得等kazuchikamasanobuimaihttp://gist.github.com/619231
76環境変数取得kazuchikatomoakioshimahttp://gist.github.com/619036
77CliBuilderkazuchikanobusuehttp://gist.github.com/619094
78HTTPファイルアップロードkazuchikauehajhttp://gist.github.com/620451
79HTTP GET/POSTkazuchikamasanobuimaihttp://gist.github.com/619282
80webサーバ(Jetty)kazuchikakazuchikahttp://gist.github.com/619882
81HTTPBuilderkazuchika
82Base64 エンコード/デコードkazuchikakanemuhttp://gist.github.com/619064
83webスクレイピング(nekohtml)kazuchikauehajhttp://gist.github.com/619366
84HTML生成kazuchikafumokmmhttp://gist.github.com/619371
85ブラウザで任意のURLを表示(OS非依存)kazuchikatoby55kijhttp://gist.github.com/619019
86YAMLkazuchikamasanobuimaihttp://gist.github.com/619292
87SwingBuilderと@Bindableでモデル・ビュー連携kazuchikakiy0takahttp://gist.github.com/619208
88grocessing (groovy+processing.org)kazuchikakimukou_26http://gist.github.com/619434
89ExpectJkazuchikakazuchika
90JFreeChartでグラフ生成kazuchikakimukou_26http://gist.github.com/619747
91MongoDBkazuchikakimukou_26http://gist.github.com/619971
92TimeCategorykazuchikanobusuehttp://gist.github.com/619108
93トランプのシャッフルkazuchikafumokmmhttp://gist.github.com/619250
94超シンプルRSS/Atomリーダーkazuchikakiy0takahttp://gist.github.com/619381
95クラスパスの動的な変更kazuchikaikikkohttp://gist.github.com/619968
96jlineで行編集/補完/ヒストリ付きコマンドラインkazuchikakazuchikahttp://gist.github.com/619117
97形態素解析kazuchikatomoakioshimahttp://gist.github.com/619176
98DerbyでGroovySQLkazuchikanobusuehttp://gist.github.com/619005
99JavaとしてもGroovyとしても正当だが結果が異なるコードkazuchikatoby55kijhttp://gist.github.com/618998
100邪悪なGroovyコード(IOCCCのGroovy版)kazuchika