Here I am introducing Top SEO queries which is  so reliable in use and helpful to your link building. These queries are best to gain visibility on search engine. It keeps own worth if you have knowledge about SEO these are main Google Search Engine Operators.Which gives you accurate result what actually you are seeking.


Queries For Guest Posting:

The following list I have provided below, It will help you to find guest post opportunities additionally you can get back links through blog comments and many more high advantage if you will use.

Keyword or Competitor name + “guest blog”
Keyword or Competitor name + “guest blogger”
Keyword or Competitor name + “guest Column”
Keyword or Competitor name + “guest article”
Keyword or Competitor name + guest post
Keyword or Competitor name + guest author

Keyword or Competitor name + “write for us”
Keyword or Competitor name + “write for me”
Keyword or Competitor name + “become a contributor”
Keyword or Competitor name + “contribute to this site”
Keyword or Competitor name + inurl:category/guest


Keyword or Competitor name + “guest blog” + inanchor:contact
Keyword or Competitor name + “guest blogger” + inanchor:contact
Keyword or Competitor name + “guest Column” + inanchor:contact
Keyword or Competitor name + “guest article” + inanchor:contact
Keyword or Competitor name e + “write for us” + inanchor:contact
Keyword or Competitor name + “write for me” + inanchor:contact




Introduction


Programming Languages are notations. They are used for specifying, organizing and reasoning about computations. Language designers are balance in making computing convenient for people with, and making efficient use of computing machines. Programming languages were invented to make machines easier to use. They are thrive because they make problems easier to solve. 
Programming languages are designed to be both higher level and general purpose. A language is higher level if it is independent of the underlying machine. A language is general purpose if it can be applied to a wide range of problems. For example, Fortran was initially created for numerical computing, Lisp for artificial intelligence, Simula for simulation, Prolog for natural language processing. Yet, these languages are general enough to have been applied to wide range of problems.
A more complete statement of Dijksta’s position is that it is hopeless to establish the correctness of a program by testing, unless the internal structure of the program is taken into account. Our only hope is to carefully design a program so that its correctness can be understood in terms of its structures. In his words, “the art of programming is the art of organizing complexity; and we must organize the computations in such a way that our limited powers are sufficient to guarantee that the computation will establish the desired effect”.

The 10 Current Trends in Programming Languages

 1.  PHP (Hypertext Preprocessor)
220px-PHP-logo.svg
Technical Background
PHP is a server-side scripting language designed for web development but also used as a general-purpose programming language. As of January 2013, PHP was installed on more than 240 million websites and 2.1 million web servers. While PHP originally stood for Personal Home Page. It now stands for PHP: Hypertext Preprocessor, a recursive backronym.
  • PHP code can be simply mixed with HTML code, or it can be used in combination with various templating engines and web frameworks.
  • PHP code is usually processed by a PHP interpreter, which is usually implemented as a web server’s native module or a Common Gateway Interface (CGI) executable.
  • After the PHP code is interpreted and executed, the web server sends resulting output to its client, usually in form of a part of the generated web page – for example, PHP code can generate a web page’s HTML code, an image, or some other data.
  • PHP has also evolved to include a command-line interface (CLI) capability and can be used in standalone graphical applications.
  • PHP is free software released under the PHP License. PHP has been widely ported and can be deployed on most web servers on almost every operating system and platform, free of charge.
Company Profile
Rasmus_Lerdorf_cropped zeev-suraski gutmans
Rasmus Lerdorf(Left), who wrote the original Common Gateway Interface(CGI), together with Andi Gutmans(right) and Zeev Suraski(center), who re-wrote the parser that formed PHP 3.   
PHP development began in 1994 when the developer Rasmus Lerdorf wrote a series of Common Gateway Interface (CGI) Perl scripts, which he used to maintain his personal homepage. He rewrote these scripts in C for performance reasons, extending them to add the ability to work with web forms and to communicate with databases, and called this implementation “Personal Home Page/Forms Interpreter” or PHP/FI.
PHP/FI could be used to build simple, dynamic web applications. Lerdorf initially announced the release of PHP/FI as “Personal Home Page Tools (PHP Tools) version 1.0″ publicly to accelerate bug location and improve the code, on the Usenet discussion group comp.infosystems.www.authoring.cgi on June 8, 1995.This release already had the basic functionality that PHP has as of 2013. This included Perl-like variables, form handling, and the ability to embed HTML. The syntax resembled that of Perl but was simpler, more limited and less consistent.
Zeev Suraski and Andi Gutmans revised the parser in 1997 and formed the base of PHP 3, changing the language’s name to the recursive acronym PHP: Hypertext Preprocessor. Afterwards, public testing of PHP 3 began, and the official launch came in June 1998. Suraski and Gutmans then started a new rewrite of PHP’s core, producing the Zend Engine in 1999. They also founded Zend Technologies in Ramat Gan, Israel.
On July 13, 2004, PHP 5 was released, powered by the new Zend Engine II. PHP 5 included new features such as improved support for object-oriented programming, the PHP Data Objects (PDO) extension (which defines a lightweight and consistent interface for accessing databases), and numerous performance enhancements. In 2008 PHP 5 became the only stable version under development. Late static binding had been missing from PHP and was added in version 5.3.
Significance and Purpose
Is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. It is a language that general purpose that can be applied to a wide range of problems.

Conceptual Development & Implementation

Quality Attributes
  • Reliability- it has the unique distinction of being the only open-source server side scripting language that’s both easy to learn and extremely powerful to use. PHP uses clear, simple syntax and delights in no obfuscated code; this makes it easy to read and understand, and encourages rapid application development.
  • Performance- PHP is a language that optimizes for speed of development, not speed of execution.
  • Security-
Possible Problems

Design Specification

References

2.  Python
Python
Technical Background
 Python is a widely used general-purpose, high-level programming language. Its design philosophy emphasizes code readability, and its syntax allows programmers to express concepts in fewer lines of code than would be possible in languages such as C. The language provides constructs intended to enable clear programs on both a small and large scale. (Summerfield, Mark. Rapid GUI Programming with Python and Qt. “Python is a very expressive language, which means that we can usually write far fewer lines of Python code than would be required for an equivalent application written in, say, C++ or Java”)
  • Python supports multiple programming paradigms, including object-oriented, imperative and functional programming or procedural styles.
  • It features a dynamic type system and automatic memory management and has a large and comprehensive standard library
  • Python is often used as a scripting language, but is also used in a wide range of non-scripting contexts.
  • Python code can be packaged into standalone executable programs.
  • Python interpreters are available for many operating systems.
Company Profile
Guido_van_Rossum
Guido van Rossum born 31 January 1956 is a Dutch computer programmer who is best known as the author of thePython programming language. In the Python community, Van Rossum is known as a “Benevolent Dictator For Life” (BDFL), meaning that he continues to oversee the Python development process, making decisions where necessary. He was employed by Google from 2005 until December 7th 2012, where he spent half his time developing the Python language. In January 2013, Van Rossum started working for Dropbox.
Python was conceived in the late 1980s and its implementation was started in December 1989 by Guido van Rossum at CWI in the Netherlands as a successor to the ABC language (itself inspired by SETL). Capable of exception handling and interfacing with the Amoeba operating system. Van Rossum is Python’s principal author, and his continuing central role in deciding the direction of Python is reflected in the title given to him by the Python community, benevolent dictator for life (BDFL).
Python 2.0 was released on 16 October 2000, with many major new features including a full garbage collector and support for Unicode. With this release the development process was changed and became more transparent and community-backed.
Python 3.0 (also called Python 3000 or py3k), a major, backwards-incompatible release, was released on 3 December 2008 after a long period of testing. Many of its major features have been backported to the backwards-compatible Python 2.6 and 2.7.
CPython, the reference implementation of Python, is free and open source software and has a community-based development model, as do nearly all of its alternative implementations. CPython is managed by the non-profit Python Software Foundation.
           
Significance & Purpose

Conceptual Development & Implementation
 Python’s development is conducted largely through the Python Enhancement Proposal (PEP) process. The PEP process is the primary mechanism for proposing major new features, for collecting community input on an issue, and for documenting the design decisions that have gone into Python. Outstanding PEPs are reviewed and commented upon by the Python community and by Van Rossum, the Python project’s BDFL.
A number of alpha, beta, and release-candidates are also released as previews and for testing before the final release is made. Although there is a rough schedule for each release, this is often pushed back if the code is not ready. The development team monitors the state of the code by running the large unit test suite during development, and using the BuildBot continuous integration system.
The community of Python developers has also contributed over 38,000 software modules (as of January 2014) to the Python Package Index (called pypi), the official repository of third-party libraries for Python.
The main Python implementation, named CPython, is written in C meeting the C89 standard. It compiles Python programs into intermediate bytecode, which is executed by the virtual machine. CPython is distributed with a large standard library written in a mixture of C and Python. It is available in versions for many platforms, including Microsoft Windows and most modern Unix-like systems. CPython was intended from almost its very conception to be cross-platform.
PyPy is a fast, compliant interpreter of Python 2.7. Its just-in-time compiler brings a significant speed improvement over CPython. A version taking advantage of multi-core processors using software transactional memory is being created.
Stackless Python is a significant fork of CPython that implements microthreads; it does not use the C memory stack, thus allowing massively concurrent programs. PyPy also has a stackless version.

Quality Attributes
  • Reliability-
  • Performance-
  • Security-

Possible Problems

Design Specification

References


3.  Ruby 
ruby
Technical Background
Ruby is a dynamic, reflective, object-oriented, general-purpose programming language. It was designed and developed in the mid-1990s by Yukihiro “Matz” Matsumoto in Japan. According to its authors, Ruby was influenced by Perl, Smalltalk, Eiffel, Ada, and Lisp. It supports multiple programming paradigms, including functional, object-oriented, and imperative. It also has a dynamic type system and automatic memory management.
Company Profile
Yukihiro_Matsumoto
Ruby was conceived on February 24, 1993. Matsumoto describes the design of Ruby as being like a simple Lisp language at its core, with an object system like that of Smalltalk, blocks inspired by higher-order functions, and practical utility like that of Perl.
The name “Ruby” originated during an online chat session between Matsumoto and Keiju Ishitsuka on February 24, 1993, before any code had been written for the language. Initially two names were proposed: “Coral” and “Ruby”. Matsumoto chose the latter in a later e-mail to Ishitsuka. Matsumoto later noted a factor in choosing the name “Ruby” – it was the birthstone of one of his colleagues.
The first public release of Ruby 0.95 was announced on Japanese domestic newsgroups on December 21, 1995. Subsequently three more versions of Ruby were released in two days. The release coincided with the launch of the Japanese-language ruby-list mailing list, which was the first mailing list for the new language.
  • In 1997, the first article about Ruby was published on the Web. In the same year, Matsumoto was hired by netlab.jp to work on Ruby as a full-time developer.
  • By 2000, Ruby was more popular than Python in Japan.
  • In September 2000, the first English language book Programming Ruby was printed, which was later freely released to the public, further widening the adoption of Ruby amongst English speakers.
  • Ruby 1.8 was initially released in August 2003, was stable for a long time, and was retired June 2013. Although deprecated, there is still code based on it. Ruby 1.8 is incompatible with Ruby 1.9.
  • Around 2005, interest in the Ruby language surged in tandem with Ruby on Rails, a popular web application framework written in Ruby.
  • Ruby 1.9 was released in December 2007. Effective with Ruby 1.9.3, released October 31, 2011
  • Ruby 2.1.0 was released on Christmas Day in 2013. The release includes speed-ups, bug fixes, and library updates. Starting with 2.1.0, Ruby is using semantic versioning.
Significance & Purpose

Conceptual Development & Implementation
As of 2010, there are a number of alternative implementations of Ruby, including JRuby, Rubinius, MagLev, IronRuby, MacRuby (and its iOS counterpart, RubyMotion), mruby, HotRuby, Topaz and Opal. Each takes a different approach, with IronRuby, JRuby, MacRuby and Rubinius providing just-in-time compilation and MacRuby and mruby also providing ahead-of-time compilation.
Ruby 1.9 has two major alternate implementations:
  • JRuby, a Java implementation that runs on the Java virtual machine,
  • Rubinius, a C++ bytecode virtual machine that uses LLVM to compile to machine code at runtime. The bytecode compiler and most core classes are written in pure Ruby.
Other Ruby implementations include:
  • MagLev, a Smalltalk implementation that runs on GemTalk Systems’ GemStone/S VM
  • RGSS, or Ruby Game Scripting System, an implementation that is used by the RPG Maker series of software for game design and modification of the RPG Maker engine.
Other now defunct Ruby implementations were:
  • MacRuby, an OS X implementation on the Objective-C runtime
  • Cardinal, an implementation for the Parrot virtual machine
  • IronRuby an implementation on the .NET Framework
Ruby can also run on embedded system by mruby, developing in GitHub.
The maturity of Ruby implementations tends to be measured by their ability to run the Ruby on Rails (Rails) framework, because it is complex to implement and uses many Ruby-specific features. The point when a particular implementation achieves this goal is called “the Rails singularity”. The reference implementation (MRI), JRuby, and Rubinius are all able to run Rails unmodified in a production environment. IronRuby is starting to be able to run Rails test cases, but is still far from being production-ready.
Quality Attributes
  • Reliability-This makes it more concise than many other programming languages, increasing the speed with which developers can produce high-quality solutions.
  • Performance-It measures the time it takes to execute code and compares it to other code that accomplishes the same task.
  • Security- Security vulnerabilities should be reported via an email to security@ruby-lang.org (the PGP public key), which is a private mailing list. Reported problems will be published after fixes. The Ruby on Rails development team released a security patch for the vulnerability, which is known as CVE-2013-0156, back in January.
Possible Problems

Design Specification


References

4.  Visual Basic .NET
Visual_Basic_Express_icon
 Technical Background
VB.Net is an Event oriented programming language on the Object Oriented Programming (OOP) language platform that fully implements the tenents of encapsulation, inheritance, and polymorphism. Unlike prior versions of Visual Basic, it does not compile to native machine code, but instead to MSIL (Microsoft Intermediate Language) which is further compiled to machine code for the processor where the code is executed. This may be done in real-time using the Just-In-Time compiler, or it may be compiled to machine language before execution via the ngen.exetool shipped with the MS.Net Framework SDK.
Visual Basic.Net (aka VB.Net, VB7, VB8) is a Microsoft Common Language Infrastructure compliant language created by Microsoft. VB.Net is free as part of the Microsoft .Net Framework SDK, or can be purchased as part of Visual Studio.Net 2002, Visual Studio .Net 2003, or Visual Studio 2005.Latest is Visual Studio 2008.It has Framework version 3.5.
 Company Profile
 Microsoft_logo_and_wordmark.svg 300px-Microsoft_building_17_front_door
Microsoft Corporation launched VB.NET in 2002 as the successor to its original Visual Basic language. Along with Visual C#, it is one of the two main languages targeting the .NET framework.
Microsoft currently supplies two main editions of IDE for developing in VB.NET: Microsoft Visual Studio 2013, which is commercial software and Visual Studio Express Edition 2013, which is free of charge.
Visual Basic was originally created to make it easier to write programs for the Windows computer operating system. The basis of Visual Basic is an earlier programming language called BASIC that was invented by Dartmouth College professors John Kemeny and Thomas Kurtz. Visual Basic is often referred to using just the initials; VB. Visual Basic is easily the most widely used computer programming system in the history of software.
Significance & Purpose
One reason for learning Visual Basic is that other technologies are also based on a “BASIC” syntax including the languages VBA and VBScript. Mainly because BASIC was so widely used when they were created. “The only reason for choosing one .NET language over others is that you can code faster and create more understandable code. For me, that’s Visual Basic.”
Conceptual development & Implementation
There have been nine versions of Visual Basic up to the current version. The first six versions were all called Visual Basic. But in 2002, Microsoft introduced Visual Basic .NET 1.0, a completely redesigned and rewritten version that was a key part of a whole computer software revolution at Microsoft. The first six versions were all “backward compatible” which means that later versions of VB could handle programs written with an earlier version. Because the .NET architecture was such a radical change, any programs written in Visual Basic 6 or earlier had to be rewritten before they could be used with .NET. It was a controversial move at the time, but VB.NET has now proven to be a great programming advance.
Quality Attributes
  • Reliability- Visual Basic also provides unique and complete software architecture.
  • Performance- Enables rapid application development of GUI applications, access to databases and creation of ActiveX controls and objects.
  • Security- The VB.NET security system provides a fine-grained, extensible policy and permission system so that people can run more powerful software code without compromising the system to security-related risks. The VB.NET security system enables administrators to create robust security policies at all levels because administrators are not forced to determine the trust of users at runtime.

Possible Problems
Is there more than one version of Visual Basic?
Yes. Since 1991 when it was first introduced by Microsoft, there have been nine versions of Visual Basic up to VB.NET 2005, the current version. The first six versions were all called Visual Basic. In 2002, Microsoft introduced Visual Basic .NET 1.0, a completely redesigned and rewritten version that was a key part of a much larger computer architecture. The first six versions were all “backward compatible”. That means that later versions of VB could handle programs written with an earlier version. Because the .NET architecture was such a radical change, earlier versions of Visual Basic have to be rewritten before they can be used with .NET. Many programmers still prefer Visual Basic 6.0 and a few use even earlier versions.
Is Visual Basic .NET really an improvement?
Absolutely yes! All of .NET is truly revolutionary and gives programmers a much more capable, efficient and flexible way to write computer software. Visual Basic .NET is a key part of this revolution.
At the same time, Visual Basic .NET is clearly more difficult to learn and use. The vastly improved capability does come at a fairly high cost of technical complexity. Microsoft helps to make up for this increased technical difficulty by providing even more software tools in .NET to help programmers. Most programmers agree that VB.NET is such a huge leap forward that it’s worth it.
Design Specification

References 

5.  Visual C++
vc++
Technical Background
Microsoft Visual C++ (often abbreviated as MSVC or VC++) is a commercial (free version available), integrated development environment (IDE) product from Microsoft for the C, C++, and C++/CLI programming languages. It features tools for developing and debugging C++ code, especially code written for the Microsoft Windows API, the DirectX API, and the Microsoft .NET Framework.
One of the original requirements for C++ was backward compatibility with the C language. Since then, C++ has evolved through several iterations—C with Classes, then the original C++ language specification, and then the many subsequent enhancements. Because of this heritage, C++ is often referred to as a multi-paradigm programming language. In C++, you can do purely procedural C-style programming that involves raw pointers, arrays, null-terminated character strings, custom data structures, and other features that may enable great performance but can also spawn bugs and complexity. Because C-style programming is fraught with perils like these, one of the founding goals for C++ was to make programs both type-safe and easier to write, extend, and maintain. Early on, C++ embraced programming paradigms such as object-oriented programming. Over the years, features have been added to the language, together with highly-tested standard libraries of data structures and algorithms. It’s these additions that have made the modern C++ style possible.
Company Profile
Microsoft_logo_and_wordmark.svg
The predecessor to Visual C++ was called Microsoft C/C++. There was also a Microsoft QuickC 2.5 and a Microsoft QuickC for Windows 1.0. The Visual C++ compiler is still known as Microsoft C/C++ and as of the release of Visual C++ 2013, is on version 18.0.21005.1.
Visual C++ was introduced in February 1993, 21 years ago.  
32-bit and 64-bit versions
  • Visual C++ 2005 (known also as Visual C++ 8.0), which included MFC 8.0, was released in November 2005. This version supports .NET 2.0 and dropped Managed C++ for C++/CLI. SP1 version also available in Microsoft Windows SDK Update for Windows Vista. Version number: 14.00.50727.762
  • Visual C++ 2008 (known also as Visual C++ 9.0) was released in November 2007. This version supports .NET 3.5. Managed C++ for CLI is still available via compiler options. SP1 version also available in Microsoft Windows SDK for Windows 7. Version number: 15.00.30729.01
  • Visual C++ 2010 (known also as Visual C++ 10.0) was released on April 12, 2010. It uses a SQL Server Compact database to store information about the source code, including IntelliSense information, for better IntelliSense and code-completion support. RTM version, also available in Windows SDK for Windows 7 and .NET Framework 4 (WinSDK v7.1).[34] Version number: 16.00.30319.01
  • SP1 version, available as part of Visual Studio 2010 Service Pack 1 or through the Microsoft Visual C++ 2010 Service Pack 1 Compiler Update for the Windows SDK 7.1. Version number: 16.00.40219.01
  • Visual C++ 2012 (known also as Visual C++ 11.0) was released on August 15, 2012. Among other things, it featured improved C++11 support, and support for Windows Runtime development.
             RTM version number: 17.00.50727.1
            Update 1 version number: 17.00.51106.1
            Update 2 version number: 17.00.60315.1
           Update 3 version number: 17.00.60610.1
          Update 4 version number: 17.00.61030.1
  • Visual C++ 2013 (known also as Visual C++ 12.0) was released on October 17, 2013, and it is currently the latest stable release. It features further C++11 and C99 support and introduces a REST SDK.
           RTM version number: 18.0.21005.1
       Update 2 version number: 18.00.30501

Significance & Purpose
Conceptual Development & Implementation
Quality Attributes
  • Reliability-
  • Performance-
  • Security-

Possible problems
Design Specification
References



6.  C#
C_Sharp
Technical Background
It is one of the newest programming languages. It conforms closely to C and C++, but many developers consider it similar to Java. There are a number of similarities between the languages. It has the rapid graphical user interface (GUI) features of previous versions of Visual Basic, the added power of C++, and object-oriented class libraries similar to Java. C# was designed from scratch by Microsoft to work with new programming paradigm, .NET, and was the language used most heavily for the development of the .NET Framework class libraries. C# can be used to develop any type of software component, including mobile applications, Web services, and console-based applications. 
Company Profile
Anders_Hejlsberg
In January 1999, Anders Hejlsberg formed a team to build a new language at the time called Cool, which stood for “C-like Object Oriented Language”. Microsoft had considered keeping the name “Cool” as the final name of the language, but chose not to do so for trademark reasons. By the time the .NET project was publicly announced at the July 2000 Professional Developers Conference, the language had been renamed C#, and the class libraries and ASP.NET runtime had been ported to C#.
In July 2000, Anders Hejlsberg said that C# is “not a Java clone” and is “much closer to C++” in its design.
Since the release of C# 2.0 in November 2005, the C# and Java languages have evolved on increasingly divergent trajectories, becoming somewhat less similar.
Furthermore, C# has added several major features to accommodate functional-style programming, culminating in the LINQ extensions released with C# 3.0 and its supporting framework of lambda expressions, extension methods, and anonymous types. These features enable C# programmers to use functional programming techniques, such as closures, when it is advantageous to their application. The LINQ extensions and the functional imports help developers reduce the amount of “boilerplate” code that is included in common tasks like querying a database, parsing an xml file, or searching through a data structure, shifting the emphasis onto the actual program logic to help improve readability and maintainability.
  • The most recent version is C# 5.0, which was released on August 15, 2012.
The name “C sharp” was inspired by musical notation where a sharp indicates that the written note should be made a semitone higher in pitch. This is similar to the language name of C++, where “++” indicates that a variable should be incremented by 1. The sharp symbol also resembles a ligature of four “+” symbols (in a two-by-two grid), further implying that the language is an increment of C++.
Significance & Purpose

Conceptual Development & Implementation

Quality Attributes
  • Reliability-
  • Performance-
  • Security-

Possible Problems

Design Specification

References

7.  JAVA
java
Technical Background
Java was introduced in 1995 and was originally called Oak. It was originally designed to be a language for intelligence consumer-electronic devices such as appliances and microwave ovens. Instead of being used for that purpose, the business community used Java most heavily for the web applications because of the nature of the bytecode, which enabled machine-independent language compiling. Because the bytecode does not target any particular computer platform and must be converted to the language of the system running the application, this facilitates development of code that runs on many types of computers.
The language was initially called Oak after an oak tree that stood outside Gosling’s office; it went by the name Green later, and was later renamed Java, from Java coffee, said to be consumed in large quantities by the language’s creators.
Company Profile
220px-James_Gosling_2008 200px-Sun_Microsystems_logo.svg 200px-Oracle_logo.svg
Java was originally developed by James Gosling at Sun Microsystems (which has since merged into Oracle Corporation) and released in 1995 as a core component of Sun Microsystems’ Java platform. The language derives much of its syntax from C and C++, but it has fewer low-level facilities than either of them.
The original and reference implementation Java compilers, virtual machines, and class libraries were developed by Sun microsystems from 1991 and first released in 1995. As of May 2007, in compliance with the specifications of the Java Community Process, Sun relicensed most of its Java technologies under the GNU General Public License. Others have also developed alternative implementations of these Sun technologies, such as the GNU Compiler for Java (bytecode compiler), GNU Classpath (standard libraries), and IcedTea-Web (browser plugin for applets).
  • James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in June 1991. Java was originally designed for interactive television, but it was too advanced for the digital cable television industry at the time.
  • Sun Microsystems released the first public implementation as Java 1.0 in 1995.
  • With the advent of Java 2 (released initially as J2SE 1.2 in December 1998 – 1999), new versions had multiple configurations built for different types of platforms.
  • In 1997, Sun Microsystems approached the ISO/IEC JTC1 standards body and later the Ecma International to formalize Java, but it soon withdrew from the process. Java remains a de facto standard, controlled through the Java Community Process.
  • On November 13, 2006, Sun released much of Java as free and open source software, (FOSS), under the terms of the GNU General Public License (GPL).
  • On May 8, 2007, Sun finished the process, making all of Java’s core code available under free software/open-source distribution terms, aside from a small portion of code to which Sun did not hold the copyright.
  • un’s vice-president Rich Green said that Sun’s ideal role with regards to Java was as an “evangelist.” Following Oracle Corporation’s acquisition of Sun Microsystems in 2009–2010, Oracle has described itself as the “steward of Java technology with a relentless commitment to fostering a community of participation and transparency”. This did not hold Oracle, however, from filing a lawsuit against Google shortly after that for using Java inside the Android SDK (see Google section below). Java software runs on everything from laptops to data centers, game consoles to scientific supercomputers. There are 930 million Java Runtime Environment downloads each year and 3 billion mobile phones run Java. On April 2, 2010, James Gosling resigned from Oracle.
Significance & Purpose

Conceptual Development & Implementations
Oracle Corporation is the current owner of the official implementation of the Java SE platform, following their acquisition of Sun Microsystems on January 27, 2010. This implementation is based on the original implementation of Java by Sun. The Oracle implementation is available for Mac OS X, Windows and Solaris. Because Java lacks any formal standardization recognized by Ecma International, ISO/IEC, ANSI, or other third-party standards organization, the Oracle implementation is the de facto standard.
The Oracle implementation is packaged into two different distributions:
  • The Java Runtime Environment (JRE) which contains the parts of the Java SE platform required to run Java programs and is intended for end-users, and the Java Development Kit (JDK), which is intended for software developers and includes development tools such as the Java compiler, Javadoc, Jar, and a debugger.
The implementation started when Sun began releasing the Java source code under the GPL. As of Java SE 7, OpenJDK is the official Java reference implementation.
The goal of Java is to make all implementations of Java compatible.
Platform-independent Java is essential to Java EE, and an even more rigorous validation is required to certify an implementation. This environment enables portable server-side applications.
Quality Attributes
  • Reliability- The Java Virtual Machine (JVM) generates a significant portion of that overhead. Typically, Java programs are not directly executed by the computer’s hardware; instead, a special program, the virtual machine, runs the Java program. The benefits of having the JVM are Java’s flexible and powerful security architecture, the plug-in nature of Java components like servlets and applets, and the portability of compiled Java programs. In addition, most modern virtual machines also contain a just-in-time compiler that compiles Java byte-codes into native machine instructions to improve performance. But all of this comes at a price: the JVM consumes both processor time and memory while managing a Java program’s execution.
  • Performance-the Java programming language was historically considered slow because compiled Java programs run on the Java Virtual Machine rather than directly on the computer’s processor like C and C++ programs do; however, in newer Java versions the execution performance has been optimized significantly mainly thanks to the introduction of just-in-time compilation.
  • The performance of a compiled Java program depends on how optimally its particular tasks are managed by the host Java Virtual Machine (JVM), and how well the JVM takes advantage of the features of the hardware and OS in doing so.
  • Java performance test or comparison has to always report the version, vendor, OS and hardware architecture of the used JVM. In a similar manner, the performance of the equivalent natively compiled program will depend on the quality of its generated machine code, so the test or comparison also has to report the name, version and vendor of the used compiler, and it’s activated optimization directives.
  • Historically, the execution speed of Java programs improved significantly due to the introduction of Just-In Time compilation (JIT) (in 1997/1998 for Java 1.1).
  • Security-Security is an important concern, since Java is meant to be used in networked environments. Without some assurance of security, you certainly wouldn’t want to download an applet from a random site on the net and let it run on your computer. Java’s memory allocation model is one of its main defenses against malicious code (e.g can’t cast integers to pointers, so can’t forge access). Furthermore:
  • access restrictions are enforced (public, private)
  • byte codes are verified, which copes with the threat of a hostile compiler
Possible problems

Design Specification


8.  Perl 
Programming-republic-of-perl
Technical Background
Perl is a family of high-level, general-purpose, interpreted, dynamic programming languages. The languages in this family include Perl 5 and Perl 6.
The Perl languages borrow features from other programming languages including C, shell scripting (sh), AWK, and sed. They provide powerful text processing facilities without the arbitrary data-length limits of many contemporary Unix command line tools, facilitating easy manipulation of text files. Perl 5 gained widespread popularity in the late 1990s as a CGI scripting language, in part due to its parsing abilities. 
Company Profile
220px-Larry_Wall_YAPC_2007
Wall developed the Perl interpreter and language while working for System Development Corporation, which later became part of Unisys. He is the co-author of Programming Perl (often referred to as the Camel Book and published by O’Reilly), which is the definitive resource for Perl programmers; and edited the Perl Cookbook. He then became employed full-time by O’Reilly Media to further develop Perl and write books on the subject.
Though Perl is not officially an acronym, there are various backronyms in use, such as: Practical Extraction and Reporting Language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions. The latest major stable revision of Perl 5 is 5.20, released in May 2014. Perl 6, which began as a redesign of Perl 5 in 2000, eventually evolved into a separate language. Both languages continue to be developed independently by different development teams and liberally borrow ideas from one another. 
Originally the only documentation for Perl was a single (increasingly lengthy) man page. In 1991, Programming perl, known to many Perl programmers as the “Camel Book” because of its cover, was published and became the de facto reference for the language.
  • Perl 5.6 was released on March 22, 2000.
  • In 2000, Wall put forth a call for suggestions for a new version of Perl from the community.
  • Perl 5.8 was first released on July 18, 2002, and had nearly yearly updates since then.
  • As of 2013 this version still remains the most popular version of Perl and is used by Red Hat 5, Suse 10, Solaris 10, HP-UX 11.33 and AIX 5.
  • In 2004, work began on the Synopses – documents that originally summarized the Apocalypses, but which became the specification for the Perl 6 language.
  • On December 18, 2007, the 20th anniversary of Perl 1.0, Perl 5.10.0 was released. Perl 5.10.0 included notable new features, which brought it closer to Perl 6.
  • On May 14, 2011, Perl 5.14 was released. JSON support is built-in as of 5.14.2.
  • The latest version of that branch, 5.14.4, was released on March 10, 2013.
  • On May 20, 2012, Perl 5.16 was released. On May 18, 2013, Perl 5.18 was released. Notable new features include the new dtrace hooks, lexical subs, more CORE:: subs, overhaul of the hash for security reasons, support for Unicode 6.2.
  • On May 27, 2014, Perl 5.20 was released. Notable new features include subroutine signatures, hash slices/new slice syntax, postfix dereferencing (experimental), Unicode 6.3, rand() using consistent random number generator.
Camel symbol
Perl-camel-small
Programming Perl, published by O’Reilly Media, features a picture of a dromedary camel on the cover and is commonly called the “Camel Book”.[48] This image of a camel has become an unofficial symbol of Perl as well as a general hacker emblem, appearing on T-shirts and other clothing items.
Onion symbol
onion
The Perl Foundation owns an alternative symbol, an onion, which it licenses to its subsidiaries, Perl Mongers, PerlMonks, Perl.org, and others. The symbol is a visual pun on pearl onion.
Significance & Purpose
A good scripting language is a high-level software development language that allows for quick and easy development of trivial tools while having the process flow and data organization necessary to also develop complex applications. It must be fast while executing. It must be efficient when calling system resources such as file operations, interprocess communications, and process control. A great scripting language runs on every popular operating system, is tuned for information processing (free form text) and yet is excellent at data processing (numbers and raw, binary data). It is embeddable, and extensible. Perl fits all of these criteria.
Conceptual Development & Implementation
Perl is implemented as a core interpreter, written in C, together with a large collection of modules, written in Perl and C. As of 2010, the stable version (5.18.2) is 16.53 MB when packaged in a tar file and gzip compressed. The interpreter is 150,000 lines of C code and compiles to a 1 MB executable on typical machine architectures. Alternatively, the interpreter can be compiled to a link library and embedded in other programs. There are nearly 500 modules in the distribution, comprising 200,000 lines of Perl and an additional 350,000 lines of C code.
The interpreter has an object-oriented architecture. All of the elements of the Perl language—scalars, arrays, hashes, coderefs, file handles—are represented in the interpreter by C structs. Operations on these structs are defined by a large collection of macros, typedefs, and functions; these constitute the Perl C API. The Perl API can be bewildering to the uninitiated, but its entry points follow a consistent naming scheme, which provides guidance to those who use it.
Most of what happens in Perl’s compile phase is compilation, and most of what happens in Perl’s run phase is execution, but there are significant exceptions. Perl makes important use of its capability to execute Perl code during the compile phase. Perl will also delay compilation into the run phase. The terms that indicate the kind of processing that is actually occurring at any moment are compile time and run time. Perl is in compile time at most points during the compile phase, but compile time may also be entered during the run phase.
Quality Attributes
  • Reliability-Perl has been successfully used for a lot of diverse tasks: text processing, system administration, web programming, web automation, GUI programming, games programming, code generation, bio-informatics and genealogical research, lingual and etymological research, number crunching, and testing and quality assurance. 
  • You can avoid dealing with many idiosyncrasies like memory allocation and freeing, passing a context variable to a function, or inconvenient syntax for complex data structures. The code is brief and effective.
  • Performance- Perl’s ability to “glue together” other programs, or transform the output of one program so it can be used as input to another.
  • The ability of a distributed development community to keep up with rapidly changing demands, in an organic, evolutionary manner.
  • Security-

Possible Questions

Design Specification

References 
http://en.wikipedia.org/wiki/Perl  http://www.perl.com/http:// http://www.onlamp.com/  http://perl-begin.org/

9.  F Sharp
FSharp_Logo
Technical Background
F# is a mature, open source, cross-platform, functional-first programming language which empowers users and organizations to tackle complex computing problems with simple, maintainable and robust code.
F# runs on Linux, Mac OS X, Android, iOS, Windows as well as HTML5 and GPUs. F# is free to use and has an OSI-approved open source license.
F# is used in a wide range of application areas and is supported by both industry-leading companies providing professional tools, and by an active open community.
Company Profile
Microsoft-Research   syme
F# originates from Microsoft Research, Cambridge and the language was originally designed and implemented by Don Syme. Andrew Kennedy contributed to the design of units of measure. The F# language and the Visual F# tools for Windows are developed by Microsoft. The F# Software Foundation develops the F# open source compiler and tools based partly on open source releases by the Microsoft Visual F# team.
F# features a legacy “ML compatibility mode” which allow programs written in a large subset of OCaml (roughly, with no functors, objects, polymorphic variants and other additions) to be immediately compiled as F#.
F# is developed by the F# Software Foundation, Microsoft and open contributors. An open source, cross-platform compiler for F# is available from the F# Software Foundation. F# is also a fully supported language in Visual Studio.F# originated from ML and has been influenced by OCaml, C#, Python, Haskell, Scala and Erlang.
F# was developed in 2005 at Microsoft Research. In many ways, F# is essentially a .Net implementation of OCaml, combining the power and expressive syntax of functional programming with the tens of thousands of classes which make up the .NET class library.
Significance & Purpose
Functional programming is often regarded as the best-kept secret of scientific modelers, mathematicians, artificial intelligence researchers, financial institutions, graphic designers, CPU designers, compiler programmers, and telecommunications engineers. Understandably, functional programming languages tend to be used in settings that perform heavy number crunching, abstract symbolic processing, or theorem proving. Of course, while F# is abstract enough to satisfy the needs of some highly technical niches, its simple and expressive syntax makes it suitable for CRUD apps, web pages, GUIs, games, and general-purpose programming.
Programming languages are becoming more functional every year. 
o   F# is valuable to programmers at any skill level; it combines many of the best features of functional and object-oriented programming styles into a uniquely productive language.
F# (pronounced “F Sharp”) is a strongly-typed, functional-first programming language for writing simple code to solve complex problems. From the business perspective, the primary role of F# is to reduce the time-to-deployment for analytical software components in the modern enterprise. Its interoperability with all .NET languages and libraries and its ability to tackle the complexity of components such as calculation engines and data-rich analytical services offer a compelling story for businesses.
Modern programming thrives on rich spaces of data, information, and services. The most recent versions of F# greatly simplify data-rich programming through the addition of the F# Type Provider mechanism, F# LINQ Queries and a multitude of type providers for enterprise and web data standards. F# is a first-class language on a number of platforms including Mac and Linux (with tool support in Xamarin Studio, MonoDevelop, Emacs and other) and Windows (with Visual Studio, Xamarin Studio and Emacs) as well as on mobile devices and on the web using HTML5.
Conceptual Development & Implementation

Quality Attributes
  • Reliability- It’s a general purpose language that you can use to build desktop, web and mobile applications and to perform cloud computations. F# is well suited for performing heavy numeric computations across large data sets. It has been successfully used in financial, statistical, parallel, scientific, engineering, testing, and event-processing software components.

  • Performance- F# is excellent for building scalable, robust web solutions:
  Fast and Scalable – F# is much faster than NodeJS, Python, PHP and Ruby
o   Succinct – F# is concise, readable and type-safe, for fast development of robust web solutions
o   Asynchronous – F# provides asynchronous programming to simplify scalable client-server programming
o   Interoperable – F# interoperates seamlessly with languages such as C#, JavaScript and TypeScript
o   JavaScript-ready – F# is JavaScript-ready through WebSharper and FunScript
o   Open-source and Cross-platform – Like all good web tools!
o   F# also shines in the area of web API development through frameworks like ServiceStack, Web API, Frank and NancyFx.
SecurityThe strength of F# undoubtedly lies in the depiction of mathematical problems and complex algorithms. Although object-oriented programming is possible with F#, calculations should be developed in F# libraries and utilised from projects written in familiar languages such as C# or Visual Basic.
F# is not limited to solving mathematical problems, however. A major benefit lies in the parallelisation where parts of the programme can or even must run in parallel. The code is not only less error-prone, but also easier to read and write than object-oriented languages.
F# not only has a significantly different syntax to C# for instance, it also demands a different way of thinking on the part of the developer. In this respect, a certain training period that should not be underestimated is unavoidable. On the other hand, it offers enormous benefits, especially in terms of parallelisation of applications.
Possible Questions
 Design Specification

References


10.  CoffeeScript
CoffeeScript-logo
Technical Background
CoffeeScript is a programming language that transcompiles to JavaScript. It adds syntactic sugar inspired by Ruby, Python and Haskell to enhance JavaScript’s brevity and readability. Specific additional features include list comprehension and pattern matching. CoffeeScript compiles predictably to JavaScript, and programs can be written with less code, typically 1/3 fewer lines, with no effect on runtime performance. In 2013 it was also ranked 29th among languages, based on number of questions tagged at Stack Overflow.
The language has a relatively large following in the Ruby community. CoffeeScript support is included in Ruby on Rails version 3.1. In 2011, Brendan Eich referenced CoffeeScript as an influence on his thoughts about the future of JavaScript.
  • The golden rule of CoffeeScript is: “It’s just JavaScript”. The code compiles one-to-one into the equivalent JS, and there is no interpretation at runtime. You can use any existing JavaScript library seamlessly from CoffeeScript (and vice-versa). The compiled output is readable and pretty-printed, will work in every JavaScript runtime, and tends to run as fast as or faster than the equivalent handwritten JavaScript.
Company Profile
jeremy ashkenas
On December 13, 2009, Jeremy Ashkenas made the first Git commit of CoffeeScript with the comment: “initial commit of the mystery language.” The compiler was written in Ruby. On December 24, he made the first tagged and documented release, 0.1.0. On February 21, 2010, he committed version 0.5, which replaced the Ruby compiler with a self-hosting version in pure CoffeeScript. By that time the project had attracted several other contributors on GitHub, and was receiving over 300 page hits per day.
On December 24, 2010, Ashkenas announced the release of stable 1.0.0 to Hacker News, the site where the project was announced for the first time.
  • Jeremy Ashkenas is the creator of the CoffeeScript programming language, the Backbone.js JavaScript framework, and theUnderscore.js JavaScript library. Ashkenas has been a speaker at numerous conferences and events. He is currently working in the graphics department at The New York Times.
Significance & Purpose

Conceptual Development & Implementation

Quality Attributes
  • Reliability-
  • Performance-
  • Security-
Possible Problems
Design Specification
References