It's a spec issue. --lars
> -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Yuh-Ruey Chen > Sent: 15. november 2007 01:53 > To: Lars T Hansen > Cc: es4-discuss > Subject: Re: generic function with structural types questions > > By "fixed", do you mean an RI bug or a spec issue? If it's > just an RI bug, can you tell me what those exprs are supposed > to evaluate to? > > -Yuh-Ruey Chen > > Lars T Hansen wrote: > > At present, generic functions do not discriminate on > structural types. > > This probably needs to be fixed, but I've not looked into it. > > > > --lars > > > > On 11/12/07, Yuh-Ruey Chen <[EMAIL PROTECTED]> wrote: > > > Given the following definitions: > > > > > > class C {var p: int}; > > > type S1 = {p: int}; > > > type S2 = {p: int, p2: double}; > > > generic function foo(x); > > > generic function foo(x: *) 0 > > > generic function foo(x: C) 1 > > > generic function foo(x: S1) 2 > > > generic function foo(x: S2) 3 > > > generic function foo(x: like S1) 4 > > > generic function foo(x: like S2) 5 > > > var o1: C = new C(); > > > var o2: S1 = {p: 10}; > > > var o3: S2 = {p: 10, p2: 3.14}; > > > var o4 = {p: 10}; > > > var o5 = {p: 10, p2: 3.14}; > > > var o6 = {p: 10, p2: 3.14, p3: "hi"}; > > > > > > What do the following exprs evaluate to? > > > foo(o1); > > > foo(o2); > > > foo(o3); > > > foo(o4); > > > foo(o5); > > > foo(o6); > > > > > > Also, I know that S1 <: Object, but is S2 <: S1? I've looked at > > > > http://wiki.ecmascript.org/doku.php?id=clarification:type_system and > > > it's not clear to me. Is it still true that C <: S1? > > > > > > -Yuh-Ruey Chen > > > _______________________________________________ > > > Es4-discuss mailing list > > > [email protected] > > > https://mail.mozilla.org/listinfo/es4-discuss > > > > > > > > _______________________________________________ > Es4-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es4-discuss > _______________________________________________ Es4-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es4-discuss
