|
.NET Framework and Languages
As mentioned on the .NET Framework page, .NET Framework
is designed for cross-language compatibility.
Cross-language compatibility means .NET components can interact with each other
irrespective of the languages they are written in. An application written in VB .NET
can reference a DLL file written in C# or a C# application can refer to a resource
written in VC++, etc. This language interoperability extends to Object-Oriented inheritance.
This cross-language compatibility is possible due to common language runtime. As you
read on the .NET Framework page, when the .NET program is compiled, the output of
the compiler is not an executable file but a file that contains a special type of
code called the Microsoft Intermediate Language (MSIL).
This MSIL is a
low-level language which is designed to be read and understood by the common
language runtime. Because all .NET executables exist as IL, they can freely operate.
The Common Language Specification defines the minimum standards that .NET language
compliers must confirm to. Thus, any code compiled by a .NET complier can interoperate
with the .NET Framework.
The Common Type System (CTS) defines the rules concerning data types and ensures that
code is executed in a safe environment. Since all .NET applications are converted
to IL before execution all primitive data types are represented as .NET types. This
means that, a VB Integer and a C# int are both represented in IL code as System.Int32.
Because both the languages use a common and interconvertible type system, it is possible
to transfer data between components and avoid time-consuming conversions.
Languages supported by .NET Framework
The table below lists all the languages supported by the .NET Framework and describes those
languages. The languages listed below are supported by the .NET Framework upto
the year 2003. In future there may be other languages that the .NET Framework
might support.
| Language | Description/Usage |
| APL | APL is one of the most powerful, consistent and concise computer programming languages ever devised.
It is a language for describing procedures in the processing of information. It can be used to describe mathematical
procedures having nothing to do with computers or to describe the way a computer works. |
| C++ | C++ is a true OOP. It is one of the early Object-Oriented programming languages. C++ derives from the C language.
VC++
Visual C++ is the name of a C++ compiler with an integrated environment from Microsoft. This includes special
tools that simplify the development of great applications, as well as specific libraries. Its use is known as visual
programming. |
| C# |
C# called as C Sharp is a full fledged Object-Oriented programming language from Microsoft built into the .NET
Framework. First created in the late 1990’s was part of Microsoft’s whole .NET strategy. |
| Cobol | COBOL (Common Business Oriented Language) was the first widely-used high-level programming language
for business applications. It is considered as a programming language to have more lines
of code than any other language. |
| Component Pascal | Component Pascal is a Pascal derived programming language that is specifically designed for programming software components. |
| Curriculum | No information. |
| Eiffel | Eiffel is an Object-Oriented (OO) programming language which emphasizes the production of robust software.
Eiffel is strongly statically typed mature Object-Oriented language with automatic memory management. |
| Forth | Forth is a programming language and programming environment. It features both interactive execution of
commands (making it suitable as a shell for systems that lack a more formal operating system), as well as
the ability to compile sequences of commands into threaded code for later execution. |
| Fortran | Acronym for Formula Translator, Fortran is one of the oldest high-level programming languages that is
still widely used in scientific computing because of its compact notation for equations, ease in handling large
arrays, and huge selection of library routines for solving mathematical problems efficiently. |
| Haskell | Haskell is a computer programming language that is a polymorphicly typed, lazy, purely functional
language, quite different from most other programming languages. It is a wide-spectrum language, suitable
for a variety of applications. It is particularly suitable for programs which need to be highly modifiable and maintainable. |
| Java Language | The Java language is one of the most powerful Object-Oriented programming languages developed till date.
It's platform independence (not depending on a particular OS) feature makes it a very popular programming language. |
| Microsoft JScript | Microsoft JScript is the Microsoft implementation of the ECMA 262 language specification.
JScript is an interpreted, object-based scripting language. It has fewer capabilities than full-fledged
Object-Oriented languages like C++ but is more than sufficiently powerful for its intended purposes. |
| Mercury | Mercury is a new logic/functional programming language, which combines the clarity and expressiveness
of declarative programming with advanced static analysis and error detection features. Its highly optimized
execution algorithm delivers efficiency far in excess of existing logic programming systems, and close to conventional
programming systems. Mercury addresses the problems of large-scale program development, allowing modularity, separate
compilation, and numerous optimization/time trade-offs. |
| Mondrian | Mondrian is a simple functional scripting language for Internet applications.
It is a functional language specifically designed to inter-operate with other languages in an OO environment.
Current versions of Mondrian run on .NET. Mondrian also supports
ASP.NET, allowing you to embed functional language code in web pages along with C# code. |
| Oberon | Oberon is a programming language very much like Modula-2 in syntax but with several interesting features.
It's based on OOP concepts and provides a Windows-based graphical user interface. |
| Oz | Oz is a high-level programming language that combines constraint inference with concurrency. Oz is dynamically typed and
has first-class procedures, classes, objects, exceptions and sequential threads synchronizing over a constraint store. It
supports finite domain and feature constraints and has powerful primitives for programming constraint inference engines at
a high level. |
| Pascal | Principle objectives for Pascal were for the language to be efficent to implement and run, allow for the development
of well structured and well organized programs, and to serve as a vehicle for the teaching of the important concepts
of computer programming. The Prime area of application that Pascal entails is the learning environment. This language was not really
developed to be used for anything other than teaching students the basics of programming as it was
originally developed for this purpose. |
| Perl | Practical Extraction and Report Language,
Perl, is a language optimized for scanning arbitrary text files, extracting information from those text files, and
printing reports based on that information. It's also a good language for many system management tasks. |
| Python | Python is an interpreted, interactive, Object-Oriented programming language.
Python combines remarkable power with very clear syntax. It has modules,
classes, exceptions, very high level dynamic data types, and dynamic typing. |
| RPG | Report Program Generator, RPG, is used for generation of reports from
data files, including matching record and sub-total reports.
RPG is one of the few languages created for punch card machines that is still in common use today.
RPG or RPG IV is a native programming language for IBM's iSeries minicomputer system. |
| Scheme | Scheme is a statically scoped programming language. It was designed to have an exceptionally clear and simple semantics
and few different ways to form expressions. A wide variety of programming paradigms, including imperative, functional,
and message passing styles, find convenient expression in Scheme. |
| Small Talk | SmallTalk is an expressive language that uses a simple sub set of
human languages, nouns and verbs. Smalltalk was the first, and remains one of the few, pure object systems, which
simply means that everything in a Smalltalk program is an object. Smalltalk is generally recognized as the second
Object Programming Language (OPL). |
| Standard ML | Standard ML is a safe, modular, strict, functional, polymorphic programming language with compile-time type checking and
type inference, garbage collection, exception handling, immutable data types and updatable references, abstract data types,
and parametric modules. It has efficient implementations and a formal definition with a proof of soundness. |
| Microsoft Visual Basic | Visual Basic is a "visual programming" environment for developing Windows applications.
Visual Basic makes it possible to develop complicated applications very quickly. This site is all about Visual Basic. |
|