5 Types of Programming Languages

Written by Coursera Staff • Updated on

Learn more about some common categories of programming languages to get inspired to start coding.

[Featured image] A woman sits in front of two computer monitors writing code in a programming language.

Programming is an increasingly in-demand skill in the job market today. With a background in programming, you can get a job coding, designing software, building data architecture, or creating intuitive user interfaces. At a glance, here's what you need to know about different types of programming languages:

  • Different programming languages are used for different tasks. While professionals commonly use languages like Python and Java, the precise type of programming language you should learn depends on your career goals.

  • The major types of programming languages include procedural, functional, object-oriented, scripting, and logic languages.

  • Building your programming skills can prepare you for a range of in-demand tech careers, including software development and engineering.

In this article, we'll explore some of the most common types of programming languages and give you some resources you can use to start learning. Afterward, if you want to learn programming yourself, consider enrolling in the University of Michigan's Python for Everybody Specialization.

5 major types of programming languages

While you'll find dozens of ways to classify various programming languages, they generally fall into five major categories. Keep in mind that some languages may fall under more than one type:

1. Procedural programming languages

A procedural language follows a sequence of statements or commands in order to achieve a desired output. Each series of steps is called a procedure, and a program written in one of these languages will have one or more procedures within it. Common examples of procedural languages include:

  • C and C++

  • Java

  • Pascal

  • BASIC

C++ is a great programming language to learn if you're also interested in learning more about how computers function. While it may not be as readable as other high-level programming languages like Python, it can still be beginner-friendly. You can give it a try for free by enrolling in Codio's introductory online program, Programming in C++: A Hands-on Introduction Specialization. After a month, you'll have created and ran your first program in C++.

2. Functional programming languages

Rather than focusing on the execution of statements, functional languages focus on the output of mathematical functions and evaluations. Each function–a reusable module of code–performs a specific task and returns a result. The result will vary depending on what data you input into the function. Some popular functional programming languages include:

  • Scala

  • Erlang

  • Haskell

  • Elixir

  • F#

3. Object-oriented programming languages (OOP)

This type of language treats a program as a group of objects composed of data and program elements, known as attributes and methods. Objects can be reused within a program or in other programs. This makes it a popular language type for complex programs, as code is easier to reuse and scale. Some common object-oriented languages include:

  • Java

  • Python

  • PHP

  • C++

  • Ruby

Free Python tutorials

If you're teaching yourself Python but you're not yet ready to commit to an online course or program, you might consider bookmarking some of the following tutorials:

How to Use For Loops in Python: Step-By-Step

How to Use Python Break

How to Write and Use Python While Loops

Python Loops Cheat Sheet

4. Scripting languages

Programmers use scripting languages to automate repetitive tasks, manage dynamic web content, or support processes in larger applications. Some common scripting languages include:

  • PHP

  • Ruby

  • Python

  • bash

  • Perl

  • Node.js

Linux operating system is the primary choice for those who prefer open-source software [1]. Familiarizing yourself with Linux can be useful for someone who is interested in learning scripting languages.

5. Logic programming languages

Instead of telling a computer what to do, a logic programming language expresses a series of facts and rules to instruct the computer on how to make decisions. Some examples of logic languages include:

  • Prolog

  • Absys

  • Datalog

  • Alma-0

Professional programming insights

Whichever language you learn, you may find it helpful to take notes or draw diagrams detailing the steps you're taking and why. It's important for programmers to be able to communicate their process to non-technical stakeholders, but taking notes can also be a great learning tool.

"Turns out this often comes in handy not only for the sake of creating documentation, but often helps in solving a single task or issue where the underlying tech is challenging to understand," offers Eric Hartzog, a software engineer at Meta.

You can learn software engineering from Meta staff by enrolling in one of their online courses or certificate programs. For example, the Meta Front-End Developer Professional Certificate focuses on JavaScript, HTML, and CSS.

Other ways to classify programming languages

You'll find many more ways to categorize languages beyond the five listed above. Let's take a closer look at there other ways you can think about programming languages:

1. Front-end vs. back-end languages

Front-end languages are primarily concerned with the ‘user’ aspect of the software. The front end deals with all of the text, colors, buttons, images, and navigation that the user will face when navigating your website or application. Anyone with a background in graphic design or art may be more inspired to begin learning one of the front-end languages. 

Some examples of front-end programming languages include: 

  • HTML 

  • CSS 

  • JavaScript 

  • React 

Back-end languages deal with storage and manipulation of the server side of software. This is the part of the software that the user does not directly come into contact with but supports their experience behind the scenes. This includes data architecture, scripting, and communication between applications and underlying databases. 

Anyone with experience in mathematics or engineering may find more interest in back-end development.

Some examples of back-end programming languages include:

  • JavaScript

  • PHP

  • Java

  • Python

  • Ruby

  • C#

A full-stack developer combines their knowledge of both front- and back-end languages, along with other technical skills and expertise, to work on any part of the development process.

2. High-level vs. low-level languages

The biggest factor that differentiates high- and low-level programming languages is whether the language is meant to be easily understood by a human programmer or a computer. Low-level languages are machine-friendly, which makes them highly efficient in terms of memory usage but difficult to understand without the help of an assembler. Since they're not very people-friendly because they don't use human language, they're also not widely used to code. Examples of these machine languages include machine code, binary code, and assembly languages.

High-level languages, on the other hand, are less memory efficient but much more human-friendly. This programming style makes it easier to write, understand, maintain, and debug. Most popular programming languages in use today are considered high-level languages. 

3. Interpreted vs. compiled languages

The distinction between interpreted and compiled languages has to do with how they convert high-level code and make it readable by a computer. With interpreted languages, code goes through a program called an interpreter, which reads and executes the code line by line. This tends to make these languages more flexible and platform independent.

Examples of interpreted languages include:

  • Python

  • JavaScript

  • PHP

  • Ruby

Compiled languages go through a build step where the entire program is converted into machine code. This makes it faster to execute, but it also means that you have to compile or "build" the program again anytime you need to make a change.

Examples of compiled languages include:

  • C, C++, and C#

  • Rust

  • Erlang

Markup language

Often, markup languages such as Hypertext Markup Language (HTML) are classified as programming languages. Technically, markup languages are not considered to be the same as programming languages. Instead, they are text-encoding systems made up of symbols that control the formatting and structure of content on a page or document.

Read more: HTML Projects to Help You Launch Your Career

Start programming today on Coursera

Learning to program is easier now than ever. With Coursera Plus, you can learn and earn credentials at your own pace from over 350 leading companies and universities. With a monthly or annual subscription, you’ll gain access to over 10,000 programs—just check the course page to confirm your selection is included.  

Article sources

  1. Statista. "Market share held by the leading computer (desktop/tablet/console) operating systems worldwide from January 2012 to February 2024, https://www.statista.com/statistics/268237/global-market-share-held-by-operating-systems-since-2009/." Accessed December 15, 2024.

Updated on
Written by:

Editorial Team

Coursera’s editorial team is comprised of highly experienced professional editors, writers, and fact...

This content has been made available for informational purposes only. Learners are advised to conduct additional research to ensure that courses and other credentials pursued meet their personal, professional, and financial goals.