Thursday, December 3, 2015

Re: Teavm



On Thursday, December 3, 2015 at 12:24:38 PM UTC+1, Martin Trummer wrote:
there is an old group post that already discusses the byte-code vs. source code issue - maybe it is still helpful 

I think the http://www.gwtproject.org/makinggwtbetter.html page should be updated for GWT 3.0.
As I understood all the talks, info etc. about GWT 3.x (e.g. GWT-3.0-Sencha-GXT-and-the-future-of-the-widget-eco-system) we will lose some of the GWT 2.x benefits - please anybody correct my when I got things wrong
  • "Key facilities out of the box: history, RPC, localization, and unit testing": History, RPC and localization will only be available as 3rd party add-ons
  • "Discourage unoptimizable patterns": 
    • the GWT compiler cannot optimize js-GUIs (Webcomponents, Polymer, ..) per browser: so we must always send all the css-prefix bloat and js for feature-detection, browser quirks etc. to the client (no matter which browser it is)
    • code-splitting worked great for GWT-widgets - I don't see how this could work for js-widgets

We don't know yet what GWT 3.0 will exactly look like, and remember that GWT 3.0 != J2CL.
It's (apparently) true that J2CL won't have "permutations" in the sense we know it with GWT, but will allow you to build for a specific browser (or whatever) by setting a "system property" to some value. One could thus create a class similar to Closure Library's goog.userAgent's namespace that by default detects the user agent at runtime but could force a specific user-agent at compile-time with a "system property"; you could then create permutations "manually" and select among them either on server-side (I believe this is what Google does most of the time) or client-side (equivalent of the selection script, i.e. *.nocache.js, generated by GWT). And similarly for I18N: https://books.google.fr/books?id=p7uyWPcVGZsC&pg=PA67#v=onepage&q&f=false
GWT 3.0 will likely use J2CL, but that doesn't mean it will stop doing permutations (particularly for I18N). That doesn't mean it will continue to support them either, we just don't know yet.
That said, browser-specific permutations has IMO reached a dead-end: Microsoft will stop support IE<11 in 40 days or so (except IE9 on Vista), which means that we'll have (hopefully) almost everyone using a "modern browser" where discrepancies aren't that many and can be dealt with at runtime without too much overhead.

--
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 google-web-toolkit+unsubscribe@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment