Go, probably the shortest name for any language conceived by developers, excluding C of course. Go is an effort by Google to introduce a new programming language to help developers utilize the new technology that is fueling a boom in the computer software industry.
The primary purpose of Google of launching this new language was to deal with the following issues:
•Computers are enormously quicker but software development is not faster.
•Dependency management is a big part of software development today but the “header files” of languages in the C tradition are antithetical to clean dependency analysis—and fast compilation.
•There is a growing rebellion against cumbersome type systems like those of Java and C++, pushing people towards dynamically typed languages such as Python and JavaScript.
•Some fundamental concepts such as garbage collection and parallel computation are not well supported by popular systems languages.
•The emergence of multicore computers has generated worry and confusion. (Source)
The very first point caught the attention of many people. Currently 64-bit systems are incapable of dealing with the 32-bit designed software applications. Resultantly, there’s a need to create software that fully accesses the hardware to its full potential. The recent slow down in software development has been linked to the inability of current programming languages to deal with hardware that is being pushed in new machines. Go does support x86 architecture for processors while maintaining legacies for older processors. However, the focus of the language is to change the landscape for programming languages and improve object orientated programming for programmers.
Java and .NET are normally considered two separate domains for programmers; Java being for developing primarily web-based applications while .NET for Microsoft applications. An attempt to merge the two often resulted in a large disasters with reverent vows that such an attempt never be made again.
There is good news; recently Microsoft has enlisted the support of Noelios Technologies, a French consulting firm, to merge the two technologies together.
“Noelios Technologies is shipping a new version of the Restlet open-source project, a lightweight REST [Representational State Transfer] framework for Java that includes the Restlet Extension for [Microsoft's] ADO.NET Data Services,” Jean-Christophe Cimetiere, a senior technical evangelist for Microsoft, wrote in a blog post Sept. 28.
To simplify a rather long complex piece of technical writing, the basic point of this technology bridge aptly named Restlet allows Java programmers to use an API to access the features of .NET. The simplicity lies in the fact that the two technologies still maintain their distinct infrastructure; the new bridge allows them to access each other via simple function calls. As a result, Java programmers can code in the usual classes that they are used to while utilizing the functionality of .NET to create new programs.
In addition to this, the impact on software development is significant. Since the decreasing market share as windows Mobile has meant that Blackberry and WinMo cell phone app development will receive a much needed boost. As a result, the functionality of .NET and Java will allow developers to create more user friendly apps. This upgrade will help boost shares of the stagnant Blackberry and WinMo cell phone market.
However, the impact of this technology may come at a point which is too late considering that the growth of the market is primarily focused on the iPhone and Android SDK. Nonetheless, predictions state the next market for growth will most likely be the BlackBerry and WinMo segment. The current trend of phones is focusing on the concept of cross platform integration or the ability to flash software as per the needs of the user.