beanz Magazine

Hello World! in 100 Programming Languages

Hello World Toast by oskay on Flickr

When you learn a new programming language, one of the first programs you learn is how to code, "Hello World!" Here's the phrase in four programming languages, as well as links to 100 plus examples.

For the first issue of this magazine, and to introduce a regular feature called Snippets, here is a single task written in different programming languages. But this task is special and ideally suited for the launch issue of this magazine. The program outputs the phrase Hello World! in multiple languages.

Before we begin, the Snippets feature demonstrates how a single task is handled in different programming languages. The goal is to help you feel more comfortable reading unfamiliar code, as well as explore differences between languages. The word red in English sounds and looks similar to rouge in French and rojo in Spanish. Programming languages often have similarities that provide insights into the languages and computing history.

Let’s dive in.

When most people learn a software language, one of their first tasks is to learn how to output the phrase, “Hello World!” It might seem silly and pointless. But it teaches you how to output data in the simplest way possible. The first example of a Hello World! program dates back to 1978 and a book, The C Programming Language, by Kernighan and Ritchie.


For the first example, we’ll start with the letter A and the Action! language used for Atari programs around 1983:

Note some things in this code, common to many programming languages:

  • The semi-colon in the first line tells the programming language the text that follows is a comment and is not to be processed.
  • The PROC bit stands for “process” and in this case the process is called Main(). Presumably, as in many coding languages, Main() is a process called by default when a program runs. Any actions that must run when the program is started are placed in this initial type of process or function.
  • PrintE(“Hello World!”) tells the programming language to print the phrase Hello World!
  • RETURN tells the language to return the value of PrintE, specifically, the phrase Hello World! The word return in computing used to mean literally return to the start of the next line of text on a computer screen. Today, return in a programming language means return the results of any commands.


This code in the ColdFusion language generates the same result as the Action! code above:

Here is a brief explanation of the ColdFusion code which is similar to the Action! code:

  • The first line, the <— and —> characters tell ColdFusion not to process this line. It’s a comment to describe the purpose of the code that follows. Often code includes comments to explain code that follows which, in turn, makes it easier to maintain code in the future when people might have forgotten the purpose or unique features of a chunk of code.
  • The <cfset > line sets (defines) a variable called message to hold the value “Hello World!”
  • The <cfoutput> open tag and </cfoutput> close tag tell the ColdFusion language to output the variable message. If you recall, this variable stores the text value, “Hello World” The # sign before and after the message variable on this line simply tell ColdFusion the location for the start and end of the variable name.


The next example highlights features common in several modern languages. Here’s the program “Hello World! in the Scala language, an excellent first language for beginner coders:

This code has a taste of both old time coding and modern coding. Here’s a quick explanation of the code:

  • As with the other examples, the first line is a comment to tell the Scala language interpreter to not process this line of code. In Scala, comments are preceded by a double forward-slash. This also applies to other languages, for example, PHP.
  • Remember how Action! above defines a process with PROC? With Scala, the language creates an object called HelloWorld and the with Application direction tells the language to call this object and run it when the application starts.
  • See the { and } on the object HelloWorld line and the last line? These are called curly quotes. If you look closely, you’ll notice the first curly quote is a left bracket which opens (starts) the definition of the object. And the last curly quote is a right bracket to close (end) the definition.
  • Perhaps the most interesting part of this code is the line, Console.println(“Hello world!”); Console and println are ancient terms in computer languages. Years ago, software programs wrote to computer screens, called consoles, that acted as front end terminals to control a computer. Output was generated line by line. So this line, Console.println, tells the Scala interpreter to print out the specified text in the brackets and double quotes, using older terms like console and print line.
  • Finally, on the Console.println line, notice the line ends with a semi-colon. This conveys to Scala the end of the specific line and any command on the given line. Many languages use both curly quotes to mark the start and end of a process or object and semi-colons to mark the end of lines of code within these process or object containers.


The last example will be in the ZIM language:

In ZIM, comments are preceded by a percent (%) symbol and the command to output text is as simple as out followed by the text to output in double quotes.


These examples are from an exhaustive list of example programs to output “Hello World!” in over 400 languages. The list is maintained by Wolfram Roesler in Germany but much of it was crowd-sourced by programmers intrigued by the project. Wikipedia also has a page with examples, if you want to learn more about these examples.

The most beautiful code I’ve ever read was in a content management system, an early version of Expression Engine, written by Rick Ellis around 2005 or 2006. Reading his code was like standing in a vast Gothic cathedral, the code was so clean, simple, and tightly integrated with the other code and files. Even his file names and folder structure was clean.

While code can look frightening to read, you quickly become used to it. Look for common patterns, comments, and descriptive names of functions and objects as you read. Reading code can be educational and enjoyable, especially when you come across beautiful well-written code.

Learn More

Wolfram Roesler’s Hello World Examples

List of Hello Word Program Examples (Wikipedia)





Text File with Code Samples

Hello World! code samples in a text file

Also In The August 2013 Issue

An Interview with Troy Hunt

Troy Hunt is a software architect and Microsoft Most Valued Professional (MVP) focusing on security concepts and process improvement in a Fortune 50 company. He's based in Australia.

1Password, LastPass, RoboForm

If you use a password you created that is less than eight characters, your password is vulnerable to hacking. Here are three ways to create and use secure passwords online.

How to Write Secure Code

Coding securely doesn't have to kill the joy of programming. In fact, learning how to code securely provides insights into languages and computing.

How to Code HTML Email

How to code an HTML email like the ones you open every day turns out to be an offbeat software coding challenge.

What is an SSL Certificate?

How to tell if a web page is secure is one of the most basic yet least obvious ways to protect your data online.

Where to Find Command Line Interface Software

One key computing skill is the ability to use command line interface (CLI) software to enter commands to control a computer. Here are some options.


Lua is a comparatively simple programming language used in a wide range of places, from digital TVs to video games to phone applications. It's also designed to be simple to use and lightweight.


Here is how three programming languages handle a common problem: how do you organize and keep track of useful data?

Linux Command List for Command Line Interfaces

Some of the most common commands you'll need for a command line interface (CLI), in a Linux command list.

Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.

News Wire Stories for October 2013

Must read stories about computer science, software programming, and technology for September 2013.

Learn More Links for October 2013

Links from the bottom of all the October 2013 articles, collected in one place for you to print, share, or bookmark.