Welcome!

Java IoT Authors: Elizabeth White, Peter Silva, Gregor Petri, Gerardo A Dada, Liz McMillan

Related Topics: @CloudExpo, Java IoT, Microservices Expo, Microsoft Cloud, Linux Containers, Agile Computing, Government Cloud

@CloudExpo: Article

Twelve New Programming Languages: Is Cloud Responsible?

It most certainly is. But that is not the whole story – there is more to it.

Do we need programming languages?

You may think that the answer is no. But, if you go by the recent trend you may need to change your mind.

Consider for example the following questions:

  • Why is Google working two (GO, DART) new programming languages?
  • Why has IBM (X10), Cray (Chapel) and Red Hat (Ceylon) working on creating a new programming language of its own?

Are new programming languages getting created just to satisfy the creative urge of somebody or has the technology evolution created the need for new way of programming and hence these new languages?

If you look back...

There are 3 periods in history when there was a burst of new programming languages. Each of these periods is linked to a critical point in technology evolution.

Period Driver Languages
1957-64 Invention of compiler and the era of 3GL (1) Fortran, (2) Algol, (3) Lisp, (4) Cobol, (5) RPG, (6) APL, (7) Simula, (8) Basic and (9) PL/1
1978-84 Invention of RDBMS and the era of the 4GL (1) SQL, (2) dBase, (3) C++, (4) Oracle Forms and PL/SQL, (5) Informix 4GL, (6) Gupta SQL, (7) Unify Accell and (8) Ingress
1990-95 O-O & Multi-tier programming and the era of WWW (1) HTML, (2) Haskel, (3) Python, (4) Power Script (Power Builder), (5) Visual Basic, (6) Lua, (7) Ruby, (8) Object Pascal (Delphi), (9) Java, (10) Java Script and (11) PHP

Other important languages which was created outside these time period are: (1) Pascal – 1970, (2) C – 1972, (3) Prolog – 1972, (4) Smalltalk – 1972, (5) Erlang – 1986, (6) Perl – 1987 and (7) C# – 2001. As you can see, they are very few.

Are we entering another period which on hindsight will be classified as another period of technology transition? Only time can tell.

Does cloud computing got anything to do with it?

It most certainly does. But that is not the whole story – there is more to it.

What could the Technology Drivers be?

If you analyze the primary motivation behind these languages, you will see several common themes emerging.

(1) Distributed/Parallel computing:

Programmability of parallel computers (Chapel from Cray, X10 from IBM), Concurrent programming (Clojure, Fantom, Go) and single language for complete cloud stack (Opa)

Cloud computing is all about distributing your process across multiple CPU and running them in parallel or concurrently. Current programming languages are not very well suited for that.

Hence this attempt to create languages tailored for parallel processing.

(2) Multi-paradigm programming:

Languages which support object oriented programming as well as functional programming (Clojure, F#, Fantom, Scala)

Functional programs are relatively easy to parallelize. However, pure functional languages have not been very successful.

Hence this attempt to create multi-paradigm programming language.

(3) Multi-platform programming:

Languages that has implementation for both JVM and CLR (Clojure, Fantom, Scala) and several other platforms (Clojure & Fantom on JavaScript engine, Scala on Android, Haxe on several platforms)

Well this is a dream which we have been chasing for decades. Will it ever be a reality? We never know.

Hence this attempt to create multi-platform language!

(4) Programming at Scale:

Readability, Modularity (Ceylon), Speed of compilation (Go, Zimbu), Suitable for large team (Scala), Meta-programmability and extensibility (Ceylon, Scala), Concise (Scala, Zimbu)

Cloud provides almost unlimited computing power which encourages us to build larger and more complex application. Building such application will require large teams and the code has to be easily maintainable.

Also, the focus on frequent integration requires the process of compilation to be speeded up.

Hence this attempt to create programming language for large application.

(5) Client side programming:

Replacement for JavaScript (Dart), same language for both client and server side (Naxe, Opa, Zimbu)

Cloud computing requires client side code to seamlessly run on multiple client devices. Though JavaScript has become a standard, nobody really likes it!

Hence this attempt to create languages which is better than JavaScript and which can run on multiple client platforms.

Quick overview of the 12 new languages mentioned earlier

Here are the 12 languages listed in an alphabetical order. (I am not including HTML5 in this list as it is strictly not a new language and I have excluded Node.js as it is only a server side JavaScript engine)

Language Who is behind it? Primary Driver Licensing
Red Hat - Home page Readability, Predictability, Tool-ability, Modularity, Meta-programmability.Runs on JVM GPL v2
Cray - Home page Programmability of parallel computersRun on Cray supercomputers and various high-performance clusters.Portable to most Unix-style systems, Mac OS X and Windows BSD
Rich HickeyHome page Concurrency using Functional programming paradigm.Runs on JVM, CLR, and JavaScript engines EPL
Google - Home page A replacement for JavaScript on the browserFaster, easier to maintain, and less susceptible to subtle bugs.Dart VM needs to be compiled – can run on Linux, Mac and Windows New BSD
Microsoft - Home page

Multi-paradigm: Functional + Imperative + Object-oriented.Runs on CLR and Mono

10 Reasons Why It`s a Hot Programming Language for Developers

Apache
Brian Frank, Andy Frank - Home page Portability, support for functional programming and concurrency.Runs on JVM and CLR. Is also compiles to javaScript. Future targets might include Objective-C for the iPhone Academic Free License
Google - Home page Compiled with the ease of programming of a dynamic language, concurrency and communication, speed of compilation.Compiler available for Linux, Mac OS X, Windows BSD style + patent grant
Nicolas Cannasse - Home page Multi-platform support.Compiler for JavaScript, Flash, NekoVM, PHP, C++. C# and Java support is expected GPL v2
MLstateHome page Targeted for cloud computing. Client-side UI, server-side logic, and database I/O are all implemented in a single languageRuntime environment own Web server and DBMS.Runs on 64bit Linux and Mac AGPL
EPFLHome page

Scalability for multicore and distributed computing. For large team. Multi-paradigm: Functional and O-O. Extensible.Runs on JVM, Android, CLR

10 Reasons Developers Need to Check It Out

BSD
IBM - Home page Designed specifically for parallel programming, performance and scale.Runs on IBM AIX, Linux, Mac OS X, Windows EPL
Bram MoolenaarHome page Aims to be fast, concise, portable, and easy-to-read and support  GUI application to an OS kernel.Compiles to ANSI C Apache v2

Finally...

What is most interesting is that all the 12 languages are available under some form of open source license.

Interesting articles on history of programming languages:

Statistics on Language usage

More Stories By Udayan Banerjee

Udayan Banerjee is CTO at NIIT Technologies Ltd, an IT industry veteran with more than 30 years' experience. He blogs at http://setandbma.wordpress.com.
The blog focuses on emerging technologies like cloud computing, mobile computing, social media aka web 2.0 etc. It also contains stuff about agile methodology and trends in architecture. It is a world view seen through the lens of a software service provider based out of Bangalore and serving clients across the world. The focus is mostly on...

  • Keep the hype out and project a realistic picture
  • Uncover trends not very apparent
  • Draw conclusion from real life experience
  • Point out fallacy & discrepancy when I see them
  • Talk about trends which I find interesting
Google

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
JayaramKrishnaswamy 05/09/12 11:40:00 PM EDT

Nice review.

@ThingsExpo Stories
The many IoT deployments around the world are busy integrating smart devices and sensors into their enterprise IT infrastructures. Yet all of this technology – and there are an amazing number of choices – is of no use without the software to gather, communicate, and analyze the new data flows. Without software, there is no IT. In this power panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, Dave McCarthy, Director of Products at Bsquare Corporation; Alan Williamson, Principal...
Extracting business value from Internet of Things (IoT) data doesn’t happen overnight. There are several requirements that must be satisfied, including IoT device enablement, data analysis, real-time detection of complex events and automated orchestration of actions. Unfortunately, too many companies fall short in achieving their business goals by implementing incomplete solutions or not focusing on tangible use cases. In his general session at @ThingsExpo, Dave McCarthy, Director of Products...
Internet of @ThingsExpo has announced today that Chris Matthieu has been named tech chair of Internet of @ThingsExpo 2017 New York The 7th Internet of @ThingsExpo will take place on June 6-8, 2017, at the Javits Center in New York City, New York. Chris Matthieu is the co-founder and CTO of Octoblu, a revolutionary real-time IoT platform recently acquired by Citrix. Octoblu connects things, systems, people and clouds to a global mesh network allowing users to automate and control design flo...
Unsecured IoT devices were used to launch crippling DDOS attacks in October 2016, targeting services such as Twitter, Spotify, and GitHub. Subsequent testimony to Congress about potential attacks on office buildings, schools, and hospitals raised the possibility for the IoT to harm and even kill people. What should be done? Does the government need to intervene? This panel at @ThingExpo New York brings together leading IoT and security experts to discuss this very serious topic.
Businesses and business units of all sizes can benefit from cloud computing, but many don't want the cost, performance and security concerns of public cloud nor the complexity of building their own private clouds. Today, some cloud vendors are using artificial intelligence (AI) to simplify cloud deployment and management. In his session at 20th Cloud Expo, Ajay Gulati, Co-founder and CEO of ZeroStack, will discuss how AI can simplify cloud operations. He will cover the following topics: why clou...
In this strange new world where more and more power is drawn from business technology, companies are effectively straddling two paths on the road to innovation and transformation into digital enterprises. The first path is the heritage trail – with “legacy” technology forming the background. Here, extant technologies are transformed by core IT teams to provide more API-driven approaches. Legacy systems can restrict companies that are transitioning into digital enterprises. To truly become a lead...
Internet-of-Things discussions can end up either going down the consumer gadget rabbit hole or focused on the sort of data logging that industrial manufacturers have been doing forever. However, in fact, companies today are already using IoT data both to optimize their operational technology and to improve the experience of customer interactions in novel ways. In his session at @ThingsExpo, Gordon Haff, Red Hat Technology Evangelist, will share examples from a wide range of industries – includin...
The WebRTC Summit New York, to be held June 6-8, 2017, at the Javits Center in New York City, NY, announces that its Call for Papers is now open. Topics include all aspects of improving IT delivery by eliminating waste through automated business models leveraging cloud technologies. WebRTC Summit is co-located with 20th International Cloud Expo and @ThingsExpo. WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web co...
"We build IoT infrastructure products - when you have to integrate different devices, different systems and cloud you have to build an application to do that but we eliminate the need to build an application. Our products can integrate any device, any system, any cloud regardless of protocol," explained Peter Jung, Chief Product Officer at Pulzze Systems, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
According to Forrester Research, every business will become either a digital predator or digital prey by 2020. To avoid demise, organizations must rapidly create new sources of value in their end-to-end customer experiences. True digital predators also must break down information and process silos and extend digital transformation initiatives to empower employees with the digital resources needed to win, serve, and retain customers.
Amazon has gradually rolled out parts of its IoT offerings in the last year, but these are just the tip of the iceberg. In addition to optimizing their back-end AWS offerings, Amazon is laying the ground work to be a major force in IoT – especially in the connected home and office. Amazon is extending its reach by building on its dominant Cloud IoT platform, its Dash Button strategy, recently announced Replenishment Services, the Echo/Alexa voice recognition control platform, the 6-7 strategic...
We're entering the post-smartphone era, where wearable gadgets from watches and fitness bands to glasses and health aids will power the next technological revolution. With mass adoption of wearable devices comes a new data ecosystem that must be protected. Wearables open new pathways that facilitate the tracking, sharing and storing of consumers’ personal health, location and daily activity data. Consumers have some idea of the data these devices capture, but most don’t realize how revealing and...
IoT solutions exploit operational data generated by Internet-connected smart “things” for the purpose of gaining operational insight and producing “better outcomes” (for example, create new business models, eliminate unscheduled maintenance, etc.). The explosive proliferation of IoT solutions will result in an exponential growth in the volume of IoT data, precipitating significant Information Governance issues: who owns the IoT data, what are the rights/duties of IoT solutions adopters towards t...
Whether your IoT service is connecting cars, homes, appliances, wearable, cameras or other devices, one question hangs in the balance – how do you actually make money from this service? The ability to turn your IoT service into profit requires the ability to create a monetization strategy that is flexible, scalable and working for you in real-time. It must be a transparent, smoothly implemented strategy that all stakeholders – from customers to the board – will be able to understand and comprehe...
Complete Internet of Things (IoT) embedded device security is not just about the device but involves the entire product’s identity, data and control integrity, and services traversing the cloud. A device can no longer be looked at as an island; it is a part of a system. In fact, given the cross-domain interactions enabled by IoT it could be a part of many systems. Also, depending on where the device is deployed, for example, in the office building versus a factory floor or oil field, security ha...
An IoT product’s log files speak volumes about what’s happening with your products in the field, pinpointing current and potential issues, and enabling you to predict failures and save millions of dollars in inventory. But until recently, no one knew how to listen. In his session at @ThingsExpo, Dan Gettens, Chief Research Officer at OnProcess, discussed recent research by Massachusetts Institute of Technology and OnProcess Technology, where MIT created a new, breakthrough analytics model for s...
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...
"We're a cybersecurity firm that specializes in engineering security solutions both at the software and hardware level. Security cannot be an after-the-fact afterthought, which is what it's become," stated Richard Blech, Chief Executive Officer at Secure Channels, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
Video experiences should be unique and exciting! But that doesn’t mean you need to patch all the pieces yourself. Users demand rich and engaging experiences and new ways to connect with you. But creating robust video applications at scale can be complicated, time-consuming and expensive. In his session at @ThingsExpo, Zohar Babin, Vice President of Platform, Ecosystem and Community at Kaltura, discussed how VPaaS enables you to move fast, creating scalable video experiences that reach your aud...
"Once customers get a year into their IoT deployments, they start to realize that they may have been shortsighted in the ways they built out their deployment and the key thing I see a lot of people looking at is - how can I take equipment data, pull it back in an IoT solution and show it in a dashboard," stated Dave McCarthy, Director of Products at Bsquare Corporation, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.