Josh McFarlane
darsant at gmail.com
Fri Aug 19 10:25:38 CDT 2005
On 8/19/05, Shamil Salakhetdinov <shamil at users.mns.ru> wrote: > And VS.NET is already using broadly declarative programming with > attributes - to mark an object as an "independent entity" belonging to this > or that category (read running on independent core) is by just adding some > attributes to the object code. Even more - .NET Assemblies can be changed on > the fly using Reflection therefore such attributes can be "injected" on > run-time. Even more.... yes, what they are doing with C# 2.0 and what they > plan to do with C# 3.0 - all that becoming more and more "crazy" and > flexible - real SOFTware can be written using this current and coming > development tools... > > Shamil The question you have to ask yourself is if the added reflection will bring more problems than it fixes. Modifying already-running code has never been one of Microsoft's strong points. The Edit and Continue compiler of VS 2005 is horribly horribly buggy, but not much can be done to fix it, as it doesn't crash at defined points, it just randomly crashes everything, including the compiler and the program that is running. Due to reflection and JIT compiling, .NET Assemblies are still very reverse engineerable also, and tend to make it appear like a Java-similar language. What I'd like to see Microsoft work more towards is the actual refinement of their other libraries, which they seem to have left in the dust in .NET. MFC and ATL still have huge defficiencies in some of their classes (CSocket / CSocketFile / CArchive comes to mind as a huge one that has never worked as intented). Prioritizing threads to logical processors, and even restricting them, is nothing particularly new. The commands were added when HyperThreading first hit language support, and it's actually quite easy to do both hardcoded and real-time. Good software design policies can always help make your software more flexible and "crazy".High-level languages can make this apparent by restricting the design policies you have control over, and making you more dependant on the language rather than your own design ideas. Josh McFarlane