コンテンツ

基本的にここで使っている図版、コードスニペット、および文章は、丸写しするにせよ適当に手を加えて使うにせよ、好きに使ってください。Life-Is-Short License というか、Public Domain です。例外がある場合は都度指示があります。

新着記事

2008-07-06 14:32:01 by admin General

Constという型パラメータは特別な意味を持つ

2008-07-06 14:32:01 by admin General

元ネタはこちら。一言で言うとおもしろそうなんだけどあまり使えないフィーチャー。

class Foo {
    public function new() {}
 
    public function wtf() {
        trace(Type.getClass(this));
    }
}

class Test {
    public static function main() {
        new Foo<"test">().wtf();
    }
}
> implements haxe.rtti.Infos

Const という名前の型パラメータが指定された場所には、どういうわけか定数を与えることができるようになっている。

上の投稿を読むと (書いているのは「Professional Haxe and Neko」の著者の人)、Reflection API でとれるよ〜みたいなことが書いてあるんですが、実際はダメなようです…。残念 (上のサンプルを走らせてみてください)。

2008-07-06 05:28:19 by admin General

enum型の構築子による値同士の比較はできない

2008-07-06 05:28:19 by admin General

どうも、ご無沙汰です。

さて、これ、意外にハマりどころだと思うんです。つまり、

enum Foo {
  foo(a: Int);
}

...

trace(foo(1) == foo(1)); // results in "false"

っていう話なのですが。

Nicolas は「まーそのうちやろうかな」的なノリみたいですね。

> Hello list,
> 
>   I have one more language suggestion: I think it might be useful to
>   be able to use == and != statement to compare enums with parameters
>   as well, for instance:

== already works for enums with no parameter. But it's true that 
comparison is currently not recursive. I'll think about a way to improve 
that but don't hold your breath :)

Nicolas
haXe 2.0 では改善されるのかなあ。されないだろうなあ。

追記: Type.enumEq() というユーティリティ関数を使うと一応 enum 同士の比較はできます。

2008-05-29 17:13:21 by admin General

訳語について一言

2008-05-29 17:13:21 by admin General

haXe は型付けに関して、マルチパラダイム、というか複数の方法を提供しているので、クラス=型と断じることができません。

にもかかわらず、原文でも「クラス」と「型」という概念を混同して使ってしまっている箇所が散見されるのですが、そこは注意深く「クラス型」という言葉を使って説明を試みています。ただし、「クラス」というものの概念を説明していると思しき箇所では「クラス」という表記を採用しているつもりです。

それにしても、かなり表記ゆれがあるので、追々直していこうとは思います。

それから、「コンストラクタ」と「構築子」の違い。これはコンピュータ用語の上では同じものを指すとされていますが、こと民生 (みんせい) 的な OOPL の世界では「コンストラクタ」というと、クラスにメソッドとして定義されているコンストラクタ関数のことを指す場合が圧倒的に多いと思われます。

一方、enum で出てくる constructor の概念は、そのような意味での constructor のものではなく、関数型言語やそれに類する言語界隈で頻出する constructor のそれです。本質的な概念には違いはないにせよ、言語の中でのセマンティクスは異なるため、混乱を避けるため、区別しておく必要があります。

そこで、苦肉の策として、漢語とカタカナ語でこうした使い分けを明瞭化することにした次第です。ここも haXe がマルチパラダイム言語であるための宿命ですね。

2008-05-29 17:06:51 by admin General

haXe 言語リファレンスの邦訳が完了しました。

2008-05-29 17:06:51 by admin General

これまでも未翻訳のセクションについて作業を継続してきましたが、本日はたまたま所用のため有給だったので全力を投入し完成させました。

haXe 言語レファレンス

「リファレンス」「レファレンス」どちらが一般的なのでしょうか。「レファレンス」というと図書館関係っていう勝手なイメージがあるんですけども。

2008-05-27 11:05:55 by admin General

haXe に関するブログ記事の紹介 (1)

2008-05-27 11:05:55 by admin General

とりあえずディノラボブログにありましたので載せときますね。

あ、あと haXe を使う上で忘れてはいけない神コントリビュータの blackdog 氏のブログもすごい情報量ですので要チェックです。

プロフィール写真も喰らいついたら離さない感が出ていて素敵ですね (ってこれが言いたかたっただけ)。

Calendar

February 2010
Mo Tu We Th Fr Sa Su
<< >>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28

Misc