First, I would say C# as a language itself is much superior to java.
autoboxing, variabe length paramters, meta-data,... all the new features in java1.5,
C# has them in the first day born.

But .net open source and project are too disappointing and many goodies we don't have but java people
is savioring it for a long time.

1. There is still no a mature aspectJ like open-source project to staticlly weave to IL for .net.
why I want it rather than dynamic proxy? which castle has provided...

Simply because I don't want to change my existing codes base.

Manytimes, after we finished a project, there is the long-term maintenance and support time.
there are so many changes request. And many changes may span the whole application, do you
really want to go through the whole application and keep adding the change you want with
many messies and unexpected errors?

That is what I believe, static weave and add the aspect, maybe a good way to solve my headache.


2. There is no good dynamic scripting yet mature like groovy in Java. IronPython sounds good,
but still immature and seems many bugs there.


3. Spring.Net is too slow and no idea where it will go to...

This is what I wish
dynamic scripting will be used more and more in application side maybe under the
light-weight container.

People in java side is starting to use groovy now and connected
to spring, very interesting. http://www.behindthesite.com/blog/C912632915/E647248081/

Thinking about, what if you can simply change the script to modify
the business rules,
to replace the boring xml configuration, to write simple test, easy to change and
no compile.

They are all good and quick fix for your project when the boss is screaming
at you for something in production not working, when some business is complaining
and want to see the change ASAP...