- 1 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 22:40:17 ]
- The Scala Programming Language
ttp://www.scala-lang.org/ チュートリアル日本語訳 ttp://homepage.mac.com/takashi_miyamoto/scala/ScalaTutorial.pdf どう書く?org Scala ttp://ja.doukaku.org/lang/scala/
- 660 名前:デフォルトの名無しさん mailto:sage [2008/12/25(木) 13:05:13 ]
- www.ibm.com/developerworks/jp/java/library/j-scala04298.html
のどの部分が分からないの?
- 661 名前:デフォルトの名無しさん [2008/12/25(木) 13:10:45 ]
- >>660
>trait が実際にクラスの一部として組み込まれるまで >trait の振る舞いの定義はチェックされません。 >あるいは別の言い方をすれば、trait を使用するクラス定義の中に >組み込まれるまで適切さをチェックされないメソッドを定義することができます。 この文章以外は分かりました traitのメソッドでも定義されていない変数なんかを使えば普通にコンパイルエラーになるので 適切さをチェックされないメソッドというのがどんなものなのかが分からないのです
- 662 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 16:30:05 ]
- trait 中の定義は、実際にはそれを実装するクラスか、あるいはスーパークラス
内のプライベートメンバとしてその本体は別名定義され、trait 中のシグネチャが それにアクセスするゲッタセッタの形になります また、trait からはそれが指定される位置以前のほかの trait などの名前が見え るようになっています。このため、指定順を入れ替えると動作が変わることもあ りえます
- 663 名前:アク禁解禁 mailto:sage [2008/12/27(土) 16:40:54 ]
- >>661
Orderd[A]の例だと def compare(that: A): Int の定義の存在はチェックされずに、Ordered[A]をコンパイルできます。 Object withするまで定義の存在はチェックされないわけです。 宣言の正当性はチェックされているのですが。
- 664 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 22:36:35 ]
- scala.xml.NodeSeqの\\メソッドでXPath式っぽいのをかけるけど
これXPathにしなかったのはなんでだろう。 素直にXPathが使えればもっと簡潔にかけるのに。 あと属性のパターンマッチできないのも中途半端。これは属性定義が順序をもたないからだろうか?
- 665 名前:デフォルトの名無しさん [2008/12/27(土) 22:38:44 ]
- >>662-663
なるほどありがとうございます
- 666 名前:デフォルトの名無しさん [2008/12/28(日) 10:58:57 ]
- XPathを完全に実装しようとおもったらノードの構造をZipperとかにしないといけなくなる。
- 667 名前:デフォルトの名無しさん mailto:sage [2008/12/28(日) 20:52:47 ]
- 本家サイトで XML の鉄人の参加を募集してることからして、そっちの方は
まだ十分にカバーできてないっぽい感じ
- 668 名前:デフォルトの名無しさん [2008/12/28(日) 21:23:08 ]
- >>666はよく考えたら違うな。
XPathをフル実装してかつ不変な構造にしたかったら、だな。 なんか関数型言語脳になってきたのかもしれん。
|

|