> David Clarke wrote: > I have 18 points at www.rccconsulting.com/aihal.htm and an explanation for > each one. Prove to me that this list of features can all be accommodated > by > any existing computer language and I will stop my development right now > and > switch. >
David, your full list of requirements is completely provided by C# and .NET. See below for point by point matching: 1. Object Oriented As a modern OO language C# supports encapsulation, data hiding, polymorphism, etc, blah, blah, blah 2. All Classes, Methods, Properties, Objects can be created and changed easily by the program itself. .NET provides in depth reflection capabilities that provide this capability. You can also construct code at run time using various approaches from high level code to MSIL. 3. Efficiently run many programs at the same time. There is in depth support for multi tasking at the process and thread level. This includes multithreaded debugging. This is in part dependent on the OS but that’s not an issue with Windows or Linux. 4. Fully extensible. .NET is fully extensible through the addition of class libraries. 5. Built-in IDE (Interactive Development Environment) that allows programs to be running concurrently with program edit, compile and run. A number of IDEs are available. The Microsoft IDE supports real time update of variables during debug sessions. As well as the language being fully extensible the IDE is also fully extensible. 6. As simple as possible. This is of course an unknown. That said C# has been designed to be as clean a language as possible. It is type safe, has very good garbage collection, and a minimal syntax that is very familiar to C/C++ and Java programmers. 7. Quick programming turnaround time. If you mean compile time then C# compiles in a JIT environment so is very quick, especially incremental builds. 8. Fast where most of the processing is done. C# is almost as efficient as C++. Where speed critical components are needed you can drop into unmanaged mode for high performance. 9. Simple hierarchy of Classes and of Objects. What is a simple hierarchy? If you mean the library classes then it is as simple as you want to make it. There is a rich set of class libraries that you can utilise but you don't have to. 10. Simple Class inheritance. C# uses single inheritance rather than multiple inheritance. This greatly simplifies class design. Interfaces are provided to support those cases where multiple inheritance would have been used. IMO this is much better approach. 11. Simple external file architecture. This is dependent on the OS but at the simplest you have text files. At the other extreme you have RDBMS. 12. Finest possible edit and compile without any linking of object modules. There are no object modules as such in .NET. Classes are grouped into namespaces and then libraries. Each library is a .DLL which is directly callable from the code. 13. Scalable to relatively large size. C# is industrial strength. There are no limitations on current hardware. You can develop fully distributed apps across multiple domains if you can afford the hardware :-) 14. Built in SQL, indexes, tables, lists, stacks and queues. Microsoft's version of C# ships with SQLSERVER RDBMS (single user, 3 conections), all common data structures are available as class libraries. SQL syntax is now built right into the language with C# 3.0 (currently in beta). You can use SQL to access all data containers not just SQL RDBMS. 15. Efficient vector handling of all data types. Again this is handled via class libraries. 16. Internet interface. Yes, it’s a standard class library. 17. Runs on Windows PC machines. Yes. It also runs on Linux as Mono. There is a good IDE available for Gnome. 18. Can run as multiple separate systems on the same computer or in the background You can run multiple instances of the IDE on the same computer. You can build applications that are services that will run as a service background task. I hope this will save you a lot of effort :-) -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.446 / Virus Database: 268.18.17/731 - Release Date: 23/03/2007 15:27 ----- This list is sponsored by AGIRI: http://www.agiri.org/email To unsubscribe or change your options, please go to: http://v2.listbox.com/member/?list_id=303
