プログラミング言語 Scala
■ このスレッドは過去ログ倉庫に格納されています
0697デフォルトの名無しさん
2009/02/04(水) 21:57:14Placeholder Syntaxを読むのが良いと思う。特に英語圏のブログでScala
やってる人が多用してる気がするけど、正確な意味を解説した記事ってないんだよな。
不正確だけどおおざっぱな説明としては、_を囲む最も内側の式が無名関数化される。
だから、println(_)だと、(x) => println(x)になるけど(_を囲む一番内側の式がprintln(_)
だから)、println(_ + 3)はprintln((x) => x + 3)になる(_を囲む一番内側の式が_ + 3だから)
あと、無名関数化される式はsyntactic category(文法定義上の非終端記号みたいなもの)が
Exprである必要がある。
基本的に、_がどう展開されるかは純粋に構文的に決まり、型とかは一切関係しない。
■ このスレッドは過去ログ倉庫に格納されています