Skip to content

Usage across different programming languages

August 5, 2009

Each programming language has its own power and potential. Most of them have evolved over a period of time and continues to evolve. Each of them has been invented with a specific purpose. Java for code portability across different platforms, FOTRAN for scientific calculations, PERL for string manipulations, COBOL for mainframes, C & C++ for embedded programming, C# for ease of component development, JavaScript/JScript for Internet Browsers and so on. Over a period of time, most organisations/companies would like to increase the productivity, whereas developers would like to enhance their logical skills and end users would like to see a better quality of service.

In order to increase the productivity, an organization has to utilise the developer’s skills effectively without repeat of work among developers working on different projects using different programming languages meant for specific purpose. Take for instance, the logic for implementing searching and sorting algorithms doesn’t differ across programming languages, however they differ syntactically.

In the past neither the organisations nor developers visualized the need for true code reusability across different programming languages. However, the ice was broken long back in 1995 with the introduction of CORBA and COM technologies to address the cross language issue. Hence the idea of language integration didn’t creep into the minds of developers at Microsoft all of a sudden. COM technology is a clear indication of their commitment to cross language interoperability. They released this wonderful technology while other existing technologies were taking birth.

Using COM one can develop components using any language as long as one confirms to COM specification. COM requires binary standard to be followed in order to call the Components written in other languages. You can design very complex networks using COM effectively. It provides us location transparency, which was one of the main reasons behind the success of billion-dollar COM market. However, the problem posed by COM with respect to code reusability is that, it does not permit one to inherit the code written in one language into another. Hence the COM technology doesn’t advocate the concept of true code reusability.

True code reusability proposes for the code written in one language to be used in another. It means, one should be able to inherit the code written in one language into another and override a method and then extend the scope of the functionality
if necessary.

Microsoft has worked hard to make this concept work, taking into consideration the views of many compiler designers, researchers, organisations and of course their own in-house feedback across the world. Many organisations are working hard to bring this dream idea to reality. As such there are 17 languages that support .NET platform and is still flexible enough to accommodate other programming languages in the future.

The above diagram shows languages under .NET can be seamlessly integrated within a project.

No comments yet

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: