JVM上で動作するスクリプト言語がまたひとつ。
ま、いろんな言語が登場するのは良いことだけど、Sleepに関して言えば すくなくとも外見からはあまり魅力を感じない言語ではある。やっぱ、Perl(の文法)に影響を受けるとどう転んでも美しくない。
しかし、MYCOM PCは(Java関連の)オープンソースソフトウェアを紹介してくれるのは ありがたいけど、情報元へのリンクがないのがいただけない。 たとえばSleepだったら「The Sleep Scripting Project」への リンクがあってしかるべきではないだろうか。
tDiaryがアップデートされてCSRF対策が行われたのはよいが、 おかげでtdiary-mode.elから更新できなくなっていた。 http.elとtdiary-mode.elの最新版を入手し、 変更点をマージした。
手元のものは
という変更が加えられている。
先日来考えているlambdaについてだが、 以下のようなものを考えている。
yacc記述はなんとかなりそうだが、メソッドの引数部分と ブロックパラメータの部分の実装が違いすぎて、動かすのは大変そう。
lamdaを引数にしたい場合は、 ary.each(->x{puts x}) ?
それとも括弧がもう一つ?
あ、「これはlambdaを引数とする…ではなく」というのがそういう意味ですか。失礼。
でも foo = ->(x) {puts x} って書くとなんかやだなぁ。
すごーく下のほうに「関連リンク」が一応あります……。
->と同義の予約語lambdaを導入して、foo = lambda(x){puts x} とも書けるようにすれば「なんかやだなぁ」も解決?
>情報元へのリンクがないのがいただけない。
下のほうにいつもあるみたいですよ。
関連記事の下にあるので、いつもあれ?オフィシャルサイトは?って思ってしまいます。ああ、そうだ、下のほうにあるんだった。って。
ありましたね、情報元へのリンク。見落としてましたよ。
なかださん、
foo = ->(x){puts x}
はイヤですか。そうか、じゃあどういうのがいいでしょうね。
「->」はPerl6起源なのですが。
関数型言語の文化圏からすると引数の前に -> が来るのは激しく気持ち悪い気もしますが……
「関数型言語の文化圏」では関数型を「引数型 -> 戻り値型」と書くんでしたっけ。
別に「->」に固執していませんから、よりよいアイディアがあれば歓迎します。
条件は
* 無名関数を表現する
* 引数リストに前置する
* 今まで使われていない記号の組合せ
* より多くの人に違和感がない(できれば)
くらいでしょうか。
Haskellでは a -> b を(->) a b と書くこともありますね:)。
\ というの却下でしたっけ? \(x){puts x}
ちなみにHaskellだとlambda式は
\a b c -> a+b+c
というように書き、
OCamlだと(無名)関数を
fun a b c -> a+b+c
というように書きます。
はああ、私のような馬鹿にはよくわかりません。
lambdaのパラメータをそんなに複雑にする場面があるのでしょうか.
複雑って言っても、省略可能な引数が指定できるようになるだけですからねえ。lambdaっていうのは要するに関数ですから、できるものならメソッドと同じように省略可能な引数も使いたいってのは自然な欲求ではないでしょうか。