Programming Languages for Mac

View 96 business solutions

Browse free open source Programming Languages and projects for Mac below. Use the toggles on the left to filter open source Programming Languages by OS, license, language, programming language, and project status.

  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 1
    CLIPS Rule Based Programming Language
    CLIPS is a forward-chaining rule-based programming language written in C that also provides procedural and object-oriented programming facilities.
    Leader badge
    Downloads: 1,043 This Week
    Last Update:
    See Project
  • 2
    Pygame

    Pygame

    Set of Python modules designed for writing video games

    Pygame is a Free and Open Source python programming language library for making multimedia applications like games built on top of the excellent SDL library. Like SDL, pygame is highly portable and runs on nearly every platform and operating system.
    Downloads: 206 This Week
    Last Update:
    See Project
  • 3
    Lean 4

    Lean 4

    Lean 4 programming language and theorem prover

    Lean 4 is both a programming language and an interactive theorem prover, designed to support formal reasoning while also functioning as an efficient and extensible general-purpose language. The project serves researchers, mathematicians, programmers, and formal methods users who need a system for writing machine-checked proofs as well as executable programs in the same environment. One of its defining characteristics is its emphasis on extensibility, since Lean 4 is built to allow users to develop custom automation, metaprogramming tools, and domain-specific extensions instead of being limited to a fixed proving workflow. The broader Lean ecosystem also includes official tutorials, language references, examples, and installation and build tools, which reflects that the project is not just a core compiler repository but the center of a mature development platform.
    Downloads: 78 This Week
    Last Update:
    See Project
  • 4
    Node-RED

    Node-RED

    Low-code programming for event-driven applications

    Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways. It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click. Node-RED provides a browser-based flow editor that makes it easy to wire together flows using the wide range of nodes in the palette. Flows can be then deployed to the runtime in a single-click. JavaScript functions can be created within the editor using a rich text editor. A built-in library allows you to save useful functions, templates or flows for re-use. The light-weight runtime is built on Node.js, taking full advantage of its event-driven, non-blocking model. This makes it ideal to run at the edge of the network on low-cost hardware such as the Raspberry Pi as well as in the cloud.
    Downloads: 78 This Week
    Last Update:
    See Project
  • Demo Series - Small Business Backup By Veeam Icon
    Demo Series - Small Business Backup By Veeam

    Learn how to protect your Microsoft 365 data, with simple, actionable tips today.

    Watch this on-demand demo series and learn how to protect your Microsoft 365 data with clear, simple, actionable steps that are easy to implement for businesses of all sizes.
    Watch Demo Series
  • 5
    Python

    Python

    The Python programming language

    Python is a powerful, high-level programming language known for its readability, simplicity, and versatility. It supports multiple programming paradigms including procedural, object-oriented, and functional styles. CPython, the reference implementation, is developed and maintained by the Python Software Foundation and the global open-source community. The language includes a vast standard library that accelerates development by providing built-in modules for file handling, networking, data manipulation, and more. Python runs seamlessly across platforms such as Linux, macOS, and Windows, making it ideal for both development and production environments. With constant updates, optimizations, and an active community, Python continues to be one of the most widely adopted languages worldwide.
    Downloads: 38 This Week
    Last Update:
    See Project
  • 6
    ArnoldC

    ArnoldC

    Arnold Schwarzenegger based programming language

    ArnoldC is a programming language built as a joke language, where the entire syntax is based on quotes from Arnold Schwarzenegger movies. Instead of conventional keywords and operators, it uses memorable movie lines to represent programming constructs like conditionals, loops, and functions. For example, “IT’S SHOWTIME” starts the main method, “TALK TO THE HAND” represents output, and “I’LL BE BACK” denotes a return statement. While humorous in nature, the language is fully functional and can be used to write real programs, showcasing how flexible compiler and interpreter design can be. The project is a playful experiment in esoteric programming languages, intended to entertain developers while also serving as an example of how language parsing and compilation can work with unconventional syntax. It demonstrates the overlap between pop culture and software development, turning famous lines into executable logic.
    Downloads: 37 This Week
    Last Update:
    See Project
  • 7
    Luau

    Luau

    Fast, small, safe, gradually typed embeddable scripting language

    It is designed to be backward compatible with Lua 5.1, as well as incorporating some features from future Lua releases, but also expands the feature set (most notably with type annotations). Luau is largely implemented from scratch, with the language runtime being a very heavily modified version of Lua 5.1 runtime, with a completely rewritten interpreter and other performance innovations. The runtime mostly preserves Lua 5.1 API, so existing bindings should be more or less compatible with a few caveats. Luau is used by Roblox game developers to write game code, as well as by Roblox engineers to implement large parts of the user-facing application code as well as portions of the editor (Roblox Studio) as plugins. Roblox chose to open-source Luau to foster collaboration within the Roblox community as well as to allow other companies and communities to benefit from the ongoing language and runtime innovation. As a consequence, Luau is now also used by games like Alan Wake 2 and Warframe.
    Downloads: 34 This Week
    Last Update:
    See Project
  • 8
    Mint

    Mint

    A refreshing programming language for the front-end web

    Mint has all the tools you need to write error-free, easily readable, and maintainable applications in record time. In Mint you can style elements directly with CSS using style blocks. Inside a style block, you can nest as many sub selectors and media queries as you like. Interpolate any Mint expressions in any value using the interpolation syntax. You can even use if and case expressions inside any block to apply styles conditionally. In Mint a store contains and manages some data. Stores are globally accessible and can be connected to components. When the data in a store changes the connected components are re-rendered. In Mint routing is a language feature instead of a library. Routes can be defined in a routes block, with support for typed path parameters. The runtime handles clicks on anchor tags and navigates in a smart way so you don't have to. You can inline any JavaScript code easily by using bacticks.
    Downloads: 32 This Week
    Last Update:
    See Project
  • 9
    TypeScript

    TypeScript

    Application-scale JavaScript

    TypeScript is an open source programming language that is a typed superset of JavaScript. It adds optional static typing to JavaScript, which can support tools for large-scale JavaScript applications for any browser, host and OS. TypeScript compiles to clean, simple JavaScript, and uses existing JavaScript code and libraries. It also offers support for the latest and evolving JavaScript features, such as async functions and decorators.
    Downloads: 23 This Week
    Last Update:
    See Project
  • Paessler: Easy to Use With Enterprise Power. Free Trial Icon
    Paessler: Easy to Use With Enterprise Power. Free Trial

    A low-code dashboard makes monitoring intuitive for any admin, while scripting and custom sensors give experts full control.

    You shouldn't have to choose between a monitoring tool that's easy to use and one that's powerful enough for a complex environment. PRTG's low-code interface lets any admin build dashboards, set alerts and monitor devices without scripting, while custom sensors and full API access are there when your team needs deeper control. One platform, no compromise. Download a free 30-day trial now.
    Get Free Download
  • 10
    jsii

    jsii

    jsii allows code in any language to naturally interact with JavaScript

    jsii allows code in any language to naturally interact with JavaScript classes. It is the technology that enables the AWS Cloud Development Kit to deliver polyglot libraries from a single codebase! A class library written in TypeScript can be used in projects authored in TypeScript or Javascript (as usual), but also in C# (and other languages from the .NET family), Go, Java, Python, etc. More languages will be added in the future! Due to JSON marshaling costs and the absence of a distributed garbage collector feature, jsii modules are best suited for development and build tools, as opposed to performance-sensitive or resource-constrained applications. By compiling our source module using jsii, we can now package it as modules in one of the supported target languages. Each target module has the exact same API as the source. This allows users of that target language to use Greeter like any other native type.
    Downloads: 22 This Week
    Last Update:
    See Project
  • 11
    Erlang/OTP

    Erlang/OTP

    Build massively scalable soft real-time systems

    Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance. OTP is set of Erlang libraries and design principles providing middle-ware to develop these systems. It includes its own distributed database, applications to interface towards other languages, debugging and release handling tools. Erlang/OTP is available as pre-built binary packages by most OS package managers. You can use Kerl, a script that lets you easily build Erlang with a few commands. We take security bugs in Erlang/OTP seriously. The Erlang distribution includes a step-by-step getting started guide.
    Downloads: 18 This Week
    Last Update:
    See Project
  • 12
    SmallBASIC

    SmallBASIC

    SmallBASIC is a fast and easy to learn BASIC language interpreter

    SmallBASIC is a lightweight and powerful BASIC interpreter designed for simplicity and speed, suitable for hobbyists, educators, and retro computing enthusiasts. It offers a traditional text-based programming experience reminiscent of early microcomputers, while including modern features such as structured programming, graphics, and file I/O. SmallBASIC runs on multiple platforms, including Windows, Linux, Android, and DOS, making it accessible across a wide range of systems.
    Downloads: 17 This Week
    Last Update:
    See Project
  • 13
    MicroPython

    MicroPython

    Python implementation for microcontrollers and constrained systems

    MicroPython is a lean and efficient implementation of the Python 3 programming language that includes a small subset of the Python standard library and is optimised to run on microcontrollers and in constrained environments. The MicroPython pyboard is a compact electronic circuit board that runs MicroPython on the bare metal, giving you a low-level Python operating system that can be used to control all kinds of electronic projects. MicroPython is packed full of advanced features such as an interactive prompt, arbitrary precision integers, closures, list comprehension, generators, exception handling and more. Yet it is compact enough to fit and run within just 256k of code space and 16k of RAM. MicroPython aims to be as compatible with normal Python as possible to allow you to transfer code with ease from the desktop to a microcontroller or embedded system.
    Downloads: 15 This Week
    Last Update:
    See Project
  • 14
    Crafting Interpreters

    Crafting Interpreters

    Repository for the book "Crafting Interpreters"

    This repository is the companion to the book Crafting Interpreters. It contains the full source code for two interpreters (one in C and one in Java), the Markdown source of the book, the tooling to weave prose and code into a website, and build scripts to generate the executable interpreters. The book aims to teach from the ground up how to build a full-featured scripting language (called Lox) with parsing, AST, compiler / VM, garbage collection, classes, and more. Static site generator tooling to compose book + code into HTML. Markdown source of book chapters and text prose. Full interpreter implementation in C (clox).
    Downloads: 11 This Week
    Last Update:
    See Project
  • 15
    Squirrel is a light weight programming language featuring higher-order functions,classes/inheritance,delegation,tail recursion,generators,cooperative threads,exception handling, reference counting and garbage collection on demand. C-like syntax.
    Leader badge
    Downloads: 97 This Week
    Last Update:
    See Project
  • 16
    Rust Programming Language

    Rust Programming Language

    Empowering everyone to build reliable and efficient software

    The Rust Programming Language is a language that empowers you to build reliable and efficient software. It runs blazingly fast and is memory-efficient, so it can power performance-critical services and run on embedded devices. It has a rich type system and ownership model, ensuring both thread and memory safety. Consisting of a standard library, great documentation and a friendly compiler, plus a top-notch build tool, package manager, auto-formatter and many other great tools, it’s the language of choice for increased productivity. Hundreds of companies the world over are using Rust to power an amazing range of cross-platform solutions. See what a great fit Rust can be for your own projects!
    Downloads: 10 This Week
    Last Update:
    See Project
  • 17
    Solidity

    Solidity

    The Smart Contract Programming Language

    Solidity is a statically-typed curly-braces programming language designed for developing smart contracts that run on Ethereum. Solidity 0.8.4 adds custom structured errors, allows more flexible configuration of the SMTChecker and fixes a bug in the Solidity ABI decoder v2. Read more about the bug here. With v0.8.4, errors can be defined inside and outside of contracts (including interfaces and libraries). This provides a convenient and gas-efficient way to explain to users why an operation failed. As a relatively young language, Solidity is advancing at a rapid speed. We aim for a regular (non-breaking) release every 2-3 weeks, with approximately two breaking releases per year. You can follow the implementation status of new features in the Solidity Github project. You can see the upcoming changes for the next breaking release by switching from the default branch (develop) to the breaking branch.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 18
    The Ballerina programming language

    The Ballerina programming language

    The Ballerina Programming Language

    Ballerina is an open-source programming language for the cloud that makes it easier to use, combine, and create network services. Network primitives in the language make it simpler to write services and run them in the cloud. Structural types with support for openness are used both for static typing within a program and for describing service interfaces. Type-safe, declarative processing of JSON, XML, and tabular data with language-integrated queries. Explicit error handling, static types, and concurrency safety, combined with a familiar, readable syntax make programs reliable and maintainable. Easy and efficient concurrency with sequence diagrams and language-managed threads without the complexity of asynchronous functions. Programs have both a textual syntax and an equivalent graphical form based on sequence diagrams.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 19
    Wasp

    Wasp

    A programming language that understands what a web app is

    Wasp (Web Application Specification Language) is a declarative DSL (domain-specific language) for developing, building and deploying modern full-stack web apps with less code. Concepts such as app, page, user, login, frontend, production, etc. are baked into the language, bringing a new level of expressiveness and allowing you to get more work done with fewer lines of code. While describing high-level features with Wasp, you still write the rest of your logic in your favorite technologies (currently React, NodeJS, Prisma). Wasp is in alpha and is therefore likely to change a lot, have bugs and miss important features. Due to its expressiveness, you can create and deploy a production-ready web app from scratch with very few lines of concise, consistent, declarative code. When you need more control than Wasp offers, you can write code in existing technologies such as js/html/css/... and combine it with Wasp code!
    Downloads: 10 This Week
    Last Update:
    See Project
  • 20
    Hy

    Hy

    A dialect of Lisp that's embedded in Python

    Hy is a multi-paradigm general-purpose programming language in the Lisp family. It’s implemented as a kind of alternative syntax for Python. Compared to Python, Hy offers a variety of extra features, generalizations, and syntactic simplifications, as would be expected of a Lisp. Compared to other Lisps, Hy provides direct access to Python’s built-ins and third-party Python libraries, while allowing you to freely mix imperative, functional, and object-oriented styles of programming. The first thing a Python programmer will notice about Hy is that it has Lisp’s traditional parenthesis-heavy prefix syntax in place of Python’s C-like infix syntax. As in other Lisps, the value of a simplistic syntax is that it facilitates Lisp’s signature feature, metaprogramming through macros, which are functions that manipulate code objects at compile-time to produce new code objects, which are then executed as if they had been part of the original code.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 21
    Modern C++ Programming

    Modern C++ Programming

    Modern C++ Programming Course

    Modern-CPP-Programming is a teaching repository that introduces practical C++11/14/17 features through focused examples, exercises, and notes. It walks through core language topics like RAII, move semantics, templates and metaprogramming, lambdas, and smart pointers with an eye toward real-world patterns. Concurrency and performance enter the picture via threads, atomics, futures, and memory considerations, helping learners reason about correctness and speed. The materials highlight best practices—value semantics, const-correctness, and zero-cost abstractions—while cautioning against common pitfalls inherited from older C++ idioms. Build and tooling conventions (e.g., CMake, testing frameworks, static analyzers) are woven into examples so projects are reproducible and portable. By combining concise snippets with progressively more complex tasks, the repo serves as both a quick reference and a guided path to writing modern, maintainable C++.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 22
    Perl 5

    Perl 5

    The Perl programming language

    This repository contains the reference implementation of the Perl 5 programming language, including the interpreter, core modules, build system, and an extensive test suite. Perl 5 is a multi-paradigm language renowned for powerful text processing, rich regular expressions, and pragmatic glue code across systems. The core distribution is highly portable, building on Unix, Linux, Windows, and many other platforms, with stable release cycles and careful back-compatibility. A C API (XS) and embedding APIs allow tight integration with native libraries and host applications, while the CPAN ecosystem supplies hundreds of thousands of reusable modules. Development emphasizes robust tests (t/), meticulous changelogs, and tooling like perldoc to keep the language approachable and dependable. In practice, Perl 5 remains a workhorse for sysadmin automation, data munging, web services, and any task where flexible, expressive text handling is paramount.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 23
    Agena

    Agena

    Agena is an interpreted procedural programming language.

    Agena is an easy-to-learn procedural programming language designed for science, scripting, and many other applications. Binaries are available for Windows, Linux, Solaris, OS/2, Mac OS X, Raspberry Pi and DOS.
    Leader badge
    Downloads: 109 This Week
    Last Update:
    See Project
  • 24

    Seed7

    Interpreter and compiler for the Seed7 programming language.

    Interpreter, compiler, libraries, documentation and examples for the Seed7 programming language. Seed7 is a general purpose programming language. It is a higher level language compared to Ada, C/C++ and Java. In Seed7 new statements and operators can be declared easily. Functions with type results and type parameters are more elegant than a template or generics concept. Object orientation is used where it brings advantages and not in places where other solutions are more obvious. Seed7 spares no effort to support portable programming. Several driver libraries assure that the access to operating system resources such as files, directories, network, clock, keyboard, console and graphics are done in a portable way. Although Seed7 contains several concepts from other programming languages, it is generally not considered a direct descendant of any other programming language.
    Leader badge
    Downloads: 40 This Week
    Last Update:
    See Project
  • 25
    Swift

    Swift

    The Swift Programming Language

    Swift is a high-performance, general-purpose programming language built with a modern approach to safety, performance, and software design patterns. With a clean and modern syntax, it offers seamless access to existing C and Objective-C code and frameworks. Swift makes it easy to write software that is incredibly fast and safe by design. It comes packaged with core features like flow control, data structures and functions, with high-level constructs like objects, protocols, closures, and generics. Its many features make it a language that is powerful, yet fun to use. It’s no wonder that Swift has quickly become one of the fastest growing languages in history.
    Downloads: 7 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next