Jiří Zárevúcky <zarevucky.j...@gmail.com> writes: > On 08/01/2009 04:36 PM, Łukasz Pankowski wrote: >> Hello >> >> According to the Vala tutorial >> >> "Finally Vala has a mechanism called Type Inference, whereby a local >> variable may be defined using var instead of giving a type, so long as >> it is unambiguous what type is meant." >> >> Type Interface works great for owned variables (for example in >> declaration of variable b below) but not for weak variable (neither >> declaration of c2 nor c3 works). >> >> I would prefer just "weak" (as in declaration of c2) as shorter, but >> maybe "weak var" would be more readable/discoverable? >> >> What do you think about the idea? Would this be hard to implement? >> >> >> class Foo {} >> >> void main () >> { >> // var for short >> Foo a = new Foo(); >> var b = new Foo(); >> >> // no `weak' for short >> weak Foo c1 = a; >> weak c2 = a; // syntax error >> weak var c3 = a; // syntax error >> } >> > > I and Julien proposed that, but juergbi closed it as WONTFIX without > discussion. > Maybe if more people express their opinion, we could change his mind? > > See this bug: http://bugzilla.gnome.org/show_bug.cgi?id=586486
Another performance related usage of the weak variables (apart from one you mentioned in the bug comment #3) is that properties return weak variables so the values are copied unless assigned to the weak variable (as in the code below) and here "weak t = a.str" shortcut would also be convenient. class Foo { public string str { get; set; } } void main () { Foo a = new Foo(); // uses g_strdup to duplicate the string var s = a.str; // no duplication needed weak string t = a.str; } _______________________________________________ Vala-list mailing list Vala-list@gnome.org http://mail.gnome.org/mailman/listinfo/vala-list