著作一覧 |
もしかして、Thunderbirdから送ってる(つもり)のメールは全部、どっかへ消えてたりして?
keisukenさんの関数プログラミングを実際に動かしてみる。
というよりも、$がメソッド名に使えるというのを知らなかったり。
import java.util.*; public class Func { interface Fn<T> { T $(T arg); } static <T> List<T> map(List<T> list, Fn<T> fn) { for(int i = 0; i < list.size(); i++) { list.set(i, fn.$(list.get(i))); } return list; } static <T> List<T> list(T... values) { List<T> list = new ArrayList<T>(values.length); for(T value : values) { list.add(value); } return list; } public static void main(String[] args) { for(Integer n : map(list(1, 2, 3), new Fn() { public Integer $(Integer n) {return n * n;}})) { System.out.println(n); } } }
でコンパイルと実行。
C:\DOCUME~1\arton\MYDOCU~1\test>javac Func.java C:\DOCUME~1\arton\MYDOCU~1\test>java Func 1 4 9
Javaはおもしろい。
追記:
破壊したら関数と名乗るべきではない(ということだと思うし、直観的にもそう思う)。ので修正。
static <T> List<T> map(List<T> list, Fn<T> fn) { ArrayList<T> nl = new ArrayList<T>(list); for(int i = 0; i < list.size(); i++) { nl.set(i, fn.$(list.get(i))); } return nl; }
(それにしてもHTMLと相性が悪いプログラミング言語だな)
ジェズイットを見習え |
ロバート・F・ヤングの「たんぽぽ娘」でしょうね。名作と言われながらも、いまとなっては絶版の本くらいにしか収録されていないため読まれることの少ない希少な作品です。<br>名作っていうか、単なる甘いラヴストーリーなんですが、確かにいい話です。
うー、それは読んでみたい。
http://www.fukkan.com/fk/VoteDetail?no=907<br>に、コバルト文庫版がでてます。「たんぽぽのお酒」で代用とはいきませんね。
今、いちばん入手しやすいのはS-Fマガジン2000年2月号に再録されたぶんでしょうね……と思ったら、ハヤカワのページによればバックナンバーはもう切れている模様です。この文春のやつの方が入手しやすいかもしれません。<br>http://homepage1.nifty.com/ta/sfxy/young.htm#tdg<br>などが参考になります。
「たんぽぽ娘」は河出の奇想コレクションで刊行予定ですね。
おお、どうもありがとうございます。>奇想コレクション<br>(とりあえず帰りに八重洲ブックセンターに寄ってみて文春文庫が売れ残ってたら買い、売ってなかったら奇想コレクション待ちの予定)
品切れじゃなくて絶版みたい(目録に出ていない)でがっかり。<br>奇想コレクションを待つことにします。