Hello World! in 100 Programming Languages

"Hello World!" is one of the first programs you learn how to code. Here's the phrase in 4 languages with links to 100 more 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


  • Tim Slavin

    Tim is an award-winning writer and technologist who enjoys teaching tech to non-technical people. He has many years experience with web sites and applications in business, technical, and creative roles. He and his wife have two kids, now teenagers, who are mad about video games.

Also In The October 2019 Issue

Bring out your virtual carving knives — it’s time to give your digital pumpkins some spooky faces!

30+ ideas for STEAM-theme gifts for kids of all ages!

Teach kids basic coding skills by letting them program Botley to zoom around the room, draw shapes, and even avoid obstacles!

How 3D printing could help us get to Mars, and create new tools, homes, spacecrafts — even organs!

No discussion of design is complete without the history of lorem ipsum. It's more than placeholder text you stuff into a visual design.

"Hello World!" is one of the first programs you learn how to code. Here's the phrase in 4 languages with links to 100 more examples.

Learn the delicious-sounding secrets that websites use to keep your passwords safe from hackers.

A simple, quirky theorem with big applications, from picking socks to counting hairs.

Are you ready to create your virtual own solar system? With a little Python code and a little math, the sky’s the limit!

Learn some of the tricks game developers use to simulate an extra dimension.

How scammers can trick you into downloading malware onto your own computer.

There are pros and cons to networking all the “smart” devices in your home. What surprises does the future hold?

Sometimes, even the most dynamic languages need to classify and check data. Now, you can add your own types to any language!

Is it possible to steal software? And how do we know who owns code?

Check out this nifty feature that helps programs distinguish between variables with different scopes.

Create a simple electronic game with CircuitPython and Adafruit, and test your reflexes against friends and family!

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

Interested but not ready to subscribe? Sign-up for our free monthly email newsletter with curated site content and a new issue email announcement that we send every two months.

No, thanks!