Idea how to implement VT/VO compatibility in JVM
vitalyd at gmail.com
Thu Jan 22 14:42:15 UTC 2015
Ok can we first agree that List <T> is NOT List <Object>? :) That's unsound
since you can't add any Object in there if things are reified. I think you
guys mean List <?>.
sent from my phone
On Jan 22, 2015 9:34 AM, "Stéphane Épardaud" <stef at epardaud.fr> wrote:
> On 01/22/2015 03:30 PM, Vitaly Davidovich wrote:
>> I don't quite get the elegance comment - there's already nothing elegant
>> about heavy use of reflection. Yes, it gets the job done in some cases,
>> but it's a minority use case (I hope!).
>> Well, IMO there's a lot more elegance in List<val Date> being an
> instance of List<Object> (variance issues aside).
>> Also, keep in mind that calling a Collection <?> taking method with value
>> type collections may not be safe as the code in that method may be relying
>> on Object semantics (e.g. locks on objects, compares reference identity,
>> etc); in some ways it's safer to call any T methods because presumably
>> person writing those is conscious of value types being a possibility and
>> also compiler may warn if any assumptions are made about it being an Object.
>> Sure, except it needs to be possible to do ;)
More information about the valhalla-dev