On Wed, Jan 7, 2009 at 10:48 AM, Bruce Johnson <br...@google.com> wrote:

> Does anyone buy that reasoning? An important related question is whether
> these things are actually compiler flags or whether they are module
> settings. I think they are actually more appropriate as the latter.
>

If they are module flags, what happens when you have different settings for
different modules (as you point out, it will be impossible to keep them
consistent in a large code base with shared code)?  If it is a compile-time
error, then some code simply won't be shareable between projects -- maybe
that is ok if that module's owner has decided it is important enough to set
the flag in a library module?  If it is based on which module it is in, does
the caller or callee win the battle, and will that behavior be surprising to
a developer?

Regarding the original question, I don't have a strong preference for either
solution over the other.  #2 does have additional utility, but it seems less
consistent than simply saying that after type tightening there must be
exactly one implementation.  Given the primary use case is shared code
between client and server which will use a JSO object in the client (at
least until generators are able to produce a JSO subclass), I am not sure
the additional utility is worth the hidden code size risk and slightly
inconsistency.

-- 
John A. Tamplin
Software Engineer (GWT), Google

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to