Article View: fj.lang.functional
Article #3Re: Where SML will go? SMLはどこへ
From: Yuuji Ichisugi
Date: Wed, 27 Nov 1996 00:00
Date: Wed, 27 Nov 1996 00:00
35 lines
2093 bytes
2093 bytes
一杉@電総研です。 followup-to: fj.lang.java にしました。 In article <FUNATO.96Nov25130805@tansu.shpcsl.sharp.co.jp> funato@shpcsl.sharp.co.jp (Nobuhiko Funato) writes: ># それにしても、Java(私は細かいことを知らない)の型システムの「穴」って、 ># 何らかのinconsistencyということでしょうか? ぼくが昔 comp.lang.java で読んだ「 java の型システムの穴」は、 「A => B (B が A の subtype)の時、 A[] => B[] とする」 というルールです。例えば A => B, A => C の時、次のプログラムを実行すると 問題が起きます。 A a[]; B b[]; b = new B[10]; a = b; // A[] => B[] なので OK a[0] = new C(); // A => C なので OK b[0].method_of_b(); // error !! #シンタックスが違ってたらごめんなさい。 で、これは java のセキュリティーホールになるかというとそうではなくて、 確か配列の代入時に実行時型チェックを入れることによって問題を 避けているそうです。 それにしてもこの「 A[] => B[] とする」っていうルール、なにか メリットあるんでしょうか。 ただでさえ nil と添字のチェックで遅い配列アクセスがますます 遅くなるだけなような。 --- 一杉裕志@電総研 ichisugi@etl.go.jp
Technical Details
Message-ID:
<ICHISUGI.96Nov27135106@buna.etl.go.jp>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<pug22cefu3.fsf@tornado.kaba.or.jp>Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS X-Google-Thread: f5c49,90f034e8e1d6f884,start X-Google-Attributes: gidf5c49,public X-Google-Thread: 10b195,90f034e8e1d6f884,start X-Google-Attributes: gid10b195,public X-Google-Thread: ff64a,90f034e8e1d6f884,start X-Google-Attributes: gidff64a,public From: ichisugi@etl.go.jp (Yuuji Ichisugi) Subject: Re: Where SML will go? SMLはどこへ Date: 1996/11/27 Message-ID: <ICHISUGI.96Nov27135106@buna.etl.go.jp> X-Deja-AN: 200968525 references: <pug22cefu3.fsf@tornado.kaba.or.jp> followup-to: fj.lang.java content-type: text/plain; charset=ISO-2022-JP organization: Electrotechnical Laboratory, JAPAN mime-version: 1.0 newsgroups: fj.lang.functional,fj.lang.java,fj.lang.misc