> Unless you can get a perfect 1:1 mapping to java apis, people are going to use a java type, and not get java behavior. That would be Very Bad (tm).
This is what http://www.jsweet.org/ does... On Friday, 27 November 2015 23:34:51 UTC+1, James Nelson wrote: > > Ok. > > So, I have Map<MyCustomObject, Stuff>, how do I map that to > goog.structs.Map? > > The closure objects do not behave 100% the same as the java objects, and > if you expect your code to do the same thing on every platform (very > common, reasonable expectation), then you can't pick an emulation library > that is functionally different. > > For maps with string keys maybe then you could use closure Map, but the > emulated java Maps all have optimizations for String that just make them > behave like a javascript dictionary. > Or things like Iterators; how are you going to map a java iterator such > that it will just work, without having to change any code? Emulation, > maybe? > > Sooo, I still don't see any path to actually removing the emulation code. > > Unless you can get a perfect 1:1 mapping to java apis, people are going to > use a java type, and not get java behavior. That would be Very Bad (tm). > > There are plenty of options for making your own Map or Set type that > itself maps to closure and can have slightly different behavior, > and it would be on you to proactively choose this map/list/set type > yourself. > > I actually don't use java.util collections and prefer my own abstraction > which can supply an optimized api for whatever platform you are on (I > specialize in cross platform; I maintain a library called xapi); > even though I also maintain a fork of Gwt where I could just mod the > java.util classes to "work better for javascript", I would not do such a > thing, because whenever I ask for an ArrayList or a LinkedHashSet, I want > exactly the behavior those classes claim to expose. > -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
