On Tue, 2011-01-11 at 11:07 +0100, pancake wrote: > On 01/11/11 10:48, Xavier Bestel wrote: > > You totally misunderstood him, pancake :) > oops > > By "old timers" he means "people with a long experience of C". > > > weird concept
Typical English expression, AFAIK. > > And what's he's talking about, is Vala's way of mangling names to be > > usable in C, which can make some names that are different in Vala > > conflict once translated to C. That behavior is useful when you're > > coding a library (you want your lin usable from C), but not when you're > > building an application. > I didn't read any "mangling" word in his mail, and I don't think this is > a feature for Vala.. but ok, maybe i'm an "old timer". > > So he's asking for a switch to change name mangling, so that "My.Class" > > and "My_class" have different names in the generated code. I tend to > > agree with him. > I think that enforcing decent name constrains is good, not only for > C compatiblity.. but also to force the developer to look for readable > and coherent names for its code. > > This "feature" will help to new users or people who don't want to know > what C is, or just see Vala as a completely unlinked language to C, which > is not the case. Say what you want, I see it as a purely technical limitation, which does more harm than good. There can be much head-scratching, trying to understand why there's a bug in the program while it's just a non-obvious mangling problem. > The 'name mangling' magic you are asking for will force all name symbol > generation to append a random number or prefix everything with the > file name.. this will keep C compatiblity but making readability harder. That's an implementation detail. You could always use traditional name mangling (so nothing changes), and start adding a suffix/prefix only in case of conflict, so you keep the best of both worlds. > I don't think that adding language features by breaking C compatiblity > can benefit Vala.. in the mean that if some day this flag appears, i will > prefer to have it only to fix name collision issues, not breaking feature > list between the two modes. IMHO there should be 2 modes: - library mode, where conflicts are clearly and loudly shown by valac. - application mode, where conflicts are silently resolved via a suffix or whatever clever magic some smart people invent. Xav _______________________________________________ vala-list mailing list vala-list@gnome.org http://mail.gnome.org/mailman/listinfo/vala-list