[Mono-dev] Compiling System.Web with CSC

Eyal Alaluf eyala at mainsoft.com
Tue Sep 27 10:42:33 EDT 2005

Hi, Miguel.

Grasshopper requires the use of Microsoft C# compiler. As mentioned before we
depend upon the pdb file for our debugging support.
In the patches I have sent I have removed the dependency on C# 2.0 features
from System.Web (under #if TARGET_J2EE/JVM). However, if System.Web adds more
dependencies upon c# 2.0 features the amount of #if will increase and make the
code less & less maintainable.
>From the changes I have made so far, I can say that the use of 'partial' is
currently minimal. I could remove it easily without a real impact on the
code quality.
The use of enumerators (apart from HttpApplication) is very small and although
it is cute, it is not critical to code quality. It becomes counter productive
when we add the C# 1.0 code side by side with the new enumerator code.

I suggest that we decide together not to increase the dependency on c# 2.0
features in System.Web (1.1 configuration). I believe that it is a simple
and practical approach without many side effects.
What do you think?


> -----Original Message-----
> From: Miguel de Icaza [mailto:miguel at novell.com]
> Sent: Saturday, September 24, 2005 9:18 PM
> To: Gert Driesen
> Cc: 'Ben Maurer'; Eyal Alaluf; mono-devel-list at lists.ximian.com
> Subject: RE: [Mono-dev] Re: Patch for compiling HttpApplication
> forGrasshopper(without use of yield)
> Hello,
>> That means it has been decided that Mono (at least System.Web) will no
>> longer build using MS.NET 1.x, right ?
> Yes, that is correct.
> To compile System.Web you will need Mono's C# compiler, as our C#
> compiler can produce 1.x assemblies and still allow you to use C# 2.0
> features.
> This is going to be used more as we avoid having to maintain our own
> GetEnumerator() code and as we use partial classes to cope with the
> reorganization that has happened between 1.x and 2.x libraries.
> Without partial classes we would have to maintain too much duplicated
> code and we do not intend to do that.
> Miguel.

More information about the Mono-devel-list mailing list