[Mono-dev] Mono's DateTime not implement same interfaces as .NET

Kriss Sonic kriss.sonic at gmail.com
Thu Apr 23 13:15:06 EDT 2009

Understood. Thanks for the kind clarification.

But ... that raises a bigger and maybe much more important question (pardon
me, I was an auditor in a former life and was actually paid to ask

If I understand well, this means compatibility with "past" Mono 1.0
applications is preferred over compatibility with current and future .NET

Isn't that a dead-end policy, as
1. they are not that many existing Mono-based applications,
2. it could make people afraid of moving to Mono (with mistaken thought like
"they don't want to be compatible") and
3. it also means more and more .NET projects will be incompatible with Mono.

I would have said that, as long as the existing set of known Mono
applications is still relatively little, it's time to remove all these
borders, notably when they concern very basic but omnipresent classes such
as DateTime. After, it will be too late. At minimum, I'd recommend to make
the statements clearer on the go-mono's FAQ.

I assume this has been discussed in the past, at least by the Mono project's
"heads"... but this kind of question is always worth to be reconsidered from
time to time. What's the point of view of Miguel or any "official" on this?


PS: just in case, as misunderstanding are so common in forums, this is not
at all criticism! Mono is a wonderful project and I'm just trying to bring a
little stone to the wall.

2009/4/23 Rafael Teixeira <monoman at gmail.com>

> The bottom-line is: Mono decides were is the 'border' for compatibility,
> and this aspect of DateTime is out of that border, as thoroughly discussed
> in that thread.
> Your application is working correctly: it is showing were Mono differs from
> .NET, on purpose. There are other points were it also occurs, as our class
> status pages also can show.
> Regards,
> On Thu, Apr 23, 2009 at 10:19 AM, Zacman <kriss.sonic at gmail.com> wrote:
>> Again I think there are two different issues:
>> 1. the API that classes must follow
>> 2. serialization
>> The issue I point here is not related to how serialization works. It's a
>> matter of "if a program faces a CLR classes and the program's logic depend
>> on the classes' declaration (attributes, interfaces...), then mono classes
>> should implement the same declaration as .NET ones".
>> Actually, I came to this situation because the application I'm creating
>> draw
>> a map of classes' relationships. And I discover that my graphical chart of
>> these relationships were different between Mono and .NET for DateTime...
>> Then, relatively to the bug you mentioned, what I suggest should have no
>> impact. Indeed it's quite easy to implement ISerializable without
>> affecting
>> Mono behavior (GetObject and the deserialization constructor would simply
>> explicitly mimic what's implicitly done today)
>> Do you see what I want to achieve?
>> Robert Jordan wrote:
>> >
>> > Zacman wrote:
>> >> I saw that one, but that's two different subjects. I'm not speaking
>> about
>> >> binary serialization or internal implementation, but about the public
>> API
>> >> that classes should expose. Today the public API of the DateTime class
>> >> does
>> >> not match .NET one (and bug 325067 is rather about how it works
>> >> internally).
>> >>
>> >> So DateTime could implement ISerializable the way it wants (either to
>> >> solve
>> >> the bug mentioned or even by doing nothing special to match current
>> >> behavior), but it should implement it, no?
>> >
>> > The bug mentions why ISerializable is of no use. You just have
>> > to go through the whole thread.
>> >
>> > Robert
>> >
>> > _______________________________________________
>> > Mono-devel-list mailing list
>> > Mono-devel-list at lists.ximian.com
>> > http://lists.ximian.com/mailman/listinfo/mono-devel-list
>> >
>> >
>> --
>> View this message in context:
>> http://www.nabble.com/Mono%27s-DateTime-not-implement-same-interfaces-as-.NET-tp23175058p23196787.html
>> Sent from the Mono - Dev mailing list archive at Nabble.com.
>> _______________________________________________
>> Mono-devel-list mailing list
>> Mono-devel-list at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
> --
> Rafael "Monoman" Teixeira
> ---------------------------------------
> "To be creative means to be in love with life. You can be creative only if
> you love life enough that you want to enhance its beauty, you want to bring
> a little more music to it, a little more poetry to it, a little more dance
> to it."
> Osho
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20090423/edc412a8/attachment.html 

More information about the Mono-devel-list mailing list