Time travel in the world of computer programming.

The “Hello, World!” program is a classic when you start with a programming language. Thus, all programmers have at least completed a “Hello, World!” program during their careers. Programmers generally using more than one programming language during their careers, most of them have even realized more than a dozen at least.

There is even a metric called TTHW for Time to “Hello, World!” measuring the time it takes a programmer to create a “Hello, World!” program and successfully run it in a new programming language.

However, if I asked you today how many different programming languages you can write a “Hello, World!” program in, what would be your answer?

To help you and refresh your memory, I propose a short journey through time in the world of computer programming. To do this, I will show you “Hello, World!” programs written in 50 different programming languages. This will allow you to see the evolution of computer programming languages over time as well.


1. Assembly Language – 1949

The Assembler language was created in 1949. For this article, I will introduce you to a classic in Assembly language with a program for Intel 8080 8-bit processors that were launched later in April 1974.

bdos equ 0005H ; BDOS entry point
start: mvi c,9 ; BDOS function: output string
lxi d,msg$ ; address of msg
call bdos
ret ; return to CCP

msg$: db ‘Hello, world!$’
end start


2. Fortran – 1957

The Fortran programming language is a derivative of Formula Translation. It is a compiled imperative programming language for general purposes, particularly suitable for numerical and scientific computation. Fortran was created in 1957 and here is a program “Hello, World!” written with this first iteration of language:

In Fortran 90 or 95, the program “Hello, World!” could be written as follows:


3. Lisp – 1958

Lisp is the oldest family of programming languages that are both imperative and functional. Lisp was originally created in 1958 as a practical model for presenting programs. In the 1970s and 1980s, Lisp finally became a very popular language in the world of artificial intelligence.

Here is a “Hello, World!” in Lisp:


4. Cobol – 1959

Officially created in 1959, the Cobol programming language has just celebrated its 60th anniversary in 2019. Cobol, which stands for COmmon Business Oriented Language, was intended to be a common language for programming business applications. In 2019, Cobol is still widely used in banking and insurance.

Here is a “Hello, World!” in Cobol:


5. BASIC – 1964

Acronym of Beginner’s All-purpose Symbolic Instruction Code, BASIC is a high-level programming language whose primary goal is ease of use, as confirmed by its “Hello, World!” program. :


6. Logo – 1968

The Logo is intended to be an easier-to-use Lisp that is often referred to as “Lisp without brackets”. In concrete terms, the Logo is a reflexive object-oriented programming language that helps you get started in computer programming.


7. B – 1969

Created in 1969, the B programming language is now obsolete but it has had an important role to play since it has strongly inspired the programming language C which is still widely used today.


8. Pascal – 1970

Pascal is an imperative programming language created in 1970. It was designed for teaching purposes and was characterized by a clear, rigorous syntax that facilitated a good program structure.

Created in 1983, Turbo Pascal is an integrated development environment for the Pascal programming language. It was a huge success during the 1980s and 1990s.

Here is a “Hello, World!” in Turbo Pascal:


9. Forth – 1970

An imperative stack-based computer programming language, Forth was invented by Charles H. Moore in the 1960s, but its first major version was released in 1970. It was standardized by ANSI in 1994 and adopted by ISO in 1997. A beautiful consecration for this language, which even benefited from a new version, Forth 2012, in 2014.

This is a “Hello, World!” Forth 1970 version:


10. C – 1972

The C programming language was invented in 1972 at Bell Laboratories when Dennis Ritchie and Ken Thompson were developing UNIX. Ken Thompson had previously developed the B language. Dennis Ritchie decided to take inspiration from the B language by adding types to create the C language.


11. Smalltalk – 1972

Inspired in particular by the Lisp language, Smalltalk is an object-oriented, reflexive, and dynamically typed programming language that was invented in 1972. Smalltalk was one of the first programming languages to have an integrated development environment.


12. Prolog – 1972

Prolog is a logic programming language associated with artificial intelligence and computational linguistics. Prolog was created in 1972.


13. ML – 1973

ML, for Meta Language, is a functional programming language based on Lisp. ML has often been characterized by Lisp with types.


14. Scheme – 1975

Created in 1975, Scheme is a multi-paradigm programming language that supports both functional and imperative programming. This is one of the 3 main dialects of Lisp with Common Lisp and Clojure which has been created much more recently.


15. SQL – 1978

SQL, or Structured Query Language, is a standardized computer language used to operate relational databases. Although it is not designed to create a simple “Hello, World!” program, it can be fun to create one as follows:


16. C++ – 1980

Originally created by Bjarne Stroustrup in 1980 under the name of C with classes, the C++ language obtained its definitive name in 1983. The C++ programming language is now standardized by ISO and is widely used in industry and other fields.


17. Ada – 1983

Ada is an object-oriented programming language whose development began in early 1980 and ended in 1983 with the major launch of Ada 1983. The name “Ada” was chosen in honor of Ada Lovelace, probably the first female computer scientist in history.

Ada is often used in real-time and embedded systems requiring a high level of reliability and security.


18. Common Lisp – 1984

Common Lisp, often abbreviated CL, is a specification of the Lisp language standardized by ANSI.


19. MATLAB – 1984

MATLAB, for “Matrix Laboratory”, is a scripting language used for numerical calculation purposes. MATLAB is emulated by a development environment of the same name.


20. Eiffel – 1985

Eiffel is an object-oriented programming language designed around a design method. Eiffel is based on concepts that have become very popular today, such as contract programming or reuse.


21. Objective-C – 1986

Objective-C is a reflexive object-oriented programming language. It is an extension of the C programming language, like C++, but differs from it in particular by its dynamic message distribution or dynamic loading.

Today, it is mainly used in Apple’s operating systems: macOS and its iOS derivative.


22. Erlang – 1986

Erlang is a programming language, supporting several paradigms: concurrent, real-time, distributed. Its competing layer is based on the actor model and has fault tolerance and hot code update capabilities, allowing the development of very high-availability applications.


23. Perl – 1987

Perl is a programming language created by Larry Wall in 1987 to easily process text-based information. Perl is an interpreted language that is inspired by the control and printing structures of C but also by the shell scripting language.


24. Caml – 1987

Caml, which stands for Categorical Abstract Machine Language, is a generalist programming language designed for program security and reliability. Caml lends itself to functional, imperative, and object-oriented programming styles. It is also a highly distinctive language.


25. Tcl – 1988

Tcl, for Tool Command Language, is a scripting language developed in 1988 by John Ousterhout. This dynamic typing language is cross-platform, extensible, easy to learn, and based on twelve syntax rules. The Tcl interfaces very easily with the C programming language.

In 1990, John Ousterhout developed an extension for Tcl called Tk which is a library for creating portable graphical interfaces. Today, when we talk about Tcl, we are more likely to talk about the combination of Tcl/Tk.


26. Haskell – 1990

Haskell is a functional programming language that is based on lambda-calculation and combinatorial logic.


27. Python – 1991

Python is an interpreted programming language, multi-paradigm and multiplatform. Python supports structured, functional, and object-oriented imperative programming. Python has become extremely popular over the years to the point of being one of the most popular languages in 2019.

Here is a “Hello, World!” in Python 3.0 or higher:

If you want to find out how to get started with the Python language, I suggest this first tutorial:


28. Visual Basic – 1991

Visual Basic, abbreviated as VB, is a third-generation event programming language and an integrated development environment created by Microsoft for its COM programming model.


29. Lua – 1993

Created in 1993, Lua is a reflexive and imperative scripting language designed to be embedded in other applications in order to extend them.


30. Ruby – 1995

Frustrated by his development experience with Smalltalk and Lisp, Yukihiro Matsumoto started designing the Ruby language in 1993 under Emacs. He published the first version in 1995. Ruby is interpreted, object-oriented, and multi-paradigm.


31. Java – 1995

An object-oriented programming language created by James Gosling in 1995, Java remains to this day the most popular and most used language in the industry. Java allows you to do everything from the thick client to the web application, and the fact that Google has chosen Java as the language for developing applications on its Android mobile OS has further extended its capabilities.


32. JavaScript – 1995

JavaScript is a scripting programming language mainly used on the Web but can now be used on the server-side with the use of Node.js for example. JavaScript is a prototype-oriented programming language in which functions are first-class objects.


33. PHP – 1995

The year 1995 will definitely have been an extremely important year in terms of programming language since, after Java and JavaScript, PHP was also born during this year. Mainly used on the Web, PHP is an object-oriented imperative language that can work locally like any other interpreted language.


34. Rebol – 1997

Rebol is a high-level scripting programming language based on denotational semantics and proclaiming itself “Messaging Language”. Here is a “Hello, World!” in Rebol:


35. ActionScript — 1998

ActionScript is a programming language that was used in client applications (such as Adobe Flash and Adobe Flex) and servers (Flash media server, JRun, Macromedia Generator). ActionScript is now used as a scripting language in the Unity graphics engine.


36. D – 1999

D is an imperative object-oriented and multi-paradigm programming language designed for system programming. The D is inspired by many languages, including C++, Java, and Eiffel. Despite its many qualities, the D has never had the success expected by its creator.


37. C# – 2000

C# was created in 2000 by Microsoft following a dispute with Sun over the Java language. C# is an object-oriented programming language designed to develop on the Microsoft.NET platform. The language is derived from C++ and Java and uses their general syntax as well as many other concepts. C# can also be used to develop web applications on the ASP.NET platform.


38. Groovy – 2003

Groovy is an object-oriented programming language running on the Java platform. Groovy is a substitute for Java language for this platform and is inspired by Python, Ruby, or Smalltalk.


39. Scala – 2003

Scala is a multi-paradigm programming language designed to express common programming models in a concise and elegant form. Scala integrates the paradigms of object-oriented and functional programming, with static typing.


40. F# – 2005

F# is a functional, imperative, and object-oriented programming language developed by Microsoft for the.NET platform. F# is derived from the OCaml programming language with which it is highly compatible. These two programming languages are part of the same family as ML languages.


41. Windows PowerShell – 2006

Windows PowerShell is a software suite developed by Microsoft that includes a command line interface, a scripting language called PowerShell, and a development kit. PowerShell is included as standard starting from Windows 7.


42. Clojure – 2007

Clojure is a compiled, cross-platform functional programming language designed to create secure and easily distributable programs. Clojure is one of the three main dialects of Lisp. Clojure transposes to Java bytecode, JavaScript code, and .NET bytecode. Clojure is therefore available on the JVM, CLR, browsers, and Node.js.


43. Go – 2009

Go is a compiled and concurrent programming language inspired by C and Pascal. This language was developed by Google from an initial concept by Robert Griesemer, Rob Pike, and Ken Thompson. This is the same Ken Thompson who created the B programming language in 1969!


44. Rust – 2010

Rust is a multi-paradigm compiled programming language designed and developed by Mozilla. Rust was designed to be “a secure, concurrent, practical language” while supporting purely functional programming styles, actor model, procedural, as well as object-oriented in some aspects. Rust is often described as one of the potential successors of C++.


45. Dart – 2011

Dart is a web programming language developed by Google. Its initial purpose was to replace JavaScript. For the moment, Dart has not achieved its goal and the priority for developers is that Dart can be converted to JavaScript code compatible with all modern browsers. Dart can also be used for server-side programming.

Dart is the language used by Flutter for the development of mobile applications.


46. Kotlin — 2011

Kotlin is an object-oriented and functional programming language, with static typing that allows compiling for the Java virtual machine, JavaScript, and to multiple platforms natively (thanks to LLVM). In 2017, Google made Kotlin the second programming language officially supported by Android after Java.


47. Ceylon – 2011

Created by Red Hat, Ceylon is a high-level open-source programming language, strongly typed and static typed. Its syntax is similar to that of Java. It can be compiled as Java bytecode or as JavaScript.


48. TypeScript – 2012

TypeScript is a free and open-source programming language developed by Microsoft to improve and secure the production of JavaScript code. The TypeScript language is a superset of JavaScript that is trans-compiled into JavaScript so that it can be interpreted by any web browser or JavaScript engine.


49. Julia – 2012

Julia is a high-level, powerful, and dynamic programming language for scientific computing, with a syntax familiar to users of other similar development environments such as MATLAB, R, or Python.


50. Swift – 2014

Swift is a compiled, multi-paradigm object programming language designed to be simple, high-performance, and secure. It is developed in open source by Apple, which makes it a solution for developing mobile iOS applications alongside Objective-C.


Conclusion

This time travel in the world of computer programming languages has allowed me to introduce you to 70 years of “Hello, World!” programs in 50 different languages.

The list of programming languages presented being far from exhaustive, I invite you to share with me in comments the “Hello, World!” programs of your favorite languages that would not be present in this list.