Serialization

Joshua Bloch jjb at google.com
Wed Dec 16 00:05:09 PST 2009


Mike,

I'm skeptical about this approach; using hashes for serial version UIDs was
a disaster, for any number of reasons.  Hashes are so fragile.  Change
anything and things blow up at runtime.  I wish I believed this approach
would work, but I'm afraid it probably won't.

       Sorry,

       Josh

On Tue, Dec 15, 2009 at 11:13 PM, Mike Swingler <swingler at apple.com> wrote:

> Perhaps the class and defining method name could be concatenated with a
> hash of the contents of the function.
>
> Cheers,
> Mike Swingler
>
>
> On Dec 15, 2009, at 10:58 PM, Joshua Bloch wrote:
>
>  Mark,
>>
>> I'm sorry to say, I don't know.  It's a hard problem.  One possibility is
>> to
>> provide a concise syntax for named singleton subclasses of functional
>> types.
>> That would finesse the problem rather than solving it.
>>
>>            Josh
>>
>> On Tue, Dec 15, 2009 at 10:38 PM, Mark Reinhold <mr at sun.com> wrote:
>>
>>  Date: Tue, 15 Dec 2009 22:17:41 -0800
>>>> From: Joshua Bloch <jjb at google.com>
>>>>
>>>
>>>  This is a moderately important decision. In Google's Java MapReduce API,
>>>>
>>> we use
>>>
>>>> SAM interfaces to represent Mapper and Reducer. Instances must be
>>>>
>>> serializable,
>>>
>>>> as they're serialized to pass them from the node that starts the
>>>>
>>> MapReduce to
>>>
>>>> the worker nodes (which do the actual mapping and reduction). That means
>>>>
>>> we
>>>
>>>> won't be able to use closure syntax for MapReduce, which seems like a
>>>>
>>> shame.
>>>
>>>>
>>>> This is no worse than what we do with SAM types today, but it's no
>>>>
>>> better,
>>>
>>>> either. Can we do better?
>>>>
>>>
>>> Maybe.  How would you suggest we address the concerns which Peter raised?
>>>
>>> - Mark
>>>
>>>
>>
>


More information about the lambda-dev mailing list