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

  • Earn up to 16% annual interest with Nexo. Icon
    Earn up to 16% annual interest with Nexo.

    Access competitive interest rates on your digital assets.

    Generate interest, borrow against your crypto, and trade a range of cryptocurrencies — all in one platform. Geographic restrictions, eligibility, and terms apply.
    Get started with Nexo.
  • Save Up to 91% on Cloud Compute With Spot VMs Icon
    Save Up to 91% on Cloud Compute With Spot VMs

    Automatic sustained-use discounts. One free VM per month. No negotiation needed.

    Run batch jobs at 60-91% off with Spot VMs. Long-running workloads get automatic discounts with sustained use.
    Start Free
  • 1
    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: 546 This Week
    Last Update:
    See Project
  • 2
    php-src

    php-src

    The PHP Interpreter

    This is the official source repository of PHP, a popular open-source server-side scripting language primarily used for web development. PHP powers a significant portion of the web, including platforms like WordPress, Drupal, and Laravel. The repository includes the core language engine, standard libraries, and tools for compilation and deployment across systems.
    Downloads: 386 This Week
    Last Update:
    See Project
  • 3
    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,416 This Week
    Last Update:
    See Project
  • 4
    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: 213 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
  • 5
    Gleam

    Gleam

    A friendly language for building type-safe, scalable systems!

    Gleam's powerful static type system helps find and prevent bugs at compile time, long before it reaches your users. It also serves as a productive refactoring tool, enabling programmers to confidently make large changes to unfamiliar code, quickly and with low risk. For problems, the type system can't solve (such as your server being hit by a bolt of lightning) the Erlang virtual machine provides well-tested mechanisms for gracefully handling failure. Hunting down bugs can be stressful so Gleam's compiler provides clear and helpful feedback about any problems. We want to spend more time developing features and less time looking for bugs or deciphering cryptic error messages. Gleam builds on top of the Erlang virtual machine, a best-in-class runtime that has enabled companies such as Discord, Ericsson, Heroku, and WhatsApp to provide low-latency services at a global scale. Gleam takes full advantage of the Erlang runtime and adds no overhead of its own.
    Downloads: 139 This Week
    Last Update:
    See Project
  • 6
    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: 76 This Week
    Last Update:
    See Project
  • 7
    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: 47 This Week
    Last Update:
    See Project
  • 8
    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: 42 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: 39 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 10
    Dart

    Dart

    Dart is a client-optimized language for fast apps on any platform

    The Dart SDK, including the VM, dart2js, core libraries, and more. Develop with a programming language specialized around the needs of user interface creation. Make changes iteratively, use hot reload to see the result instantly in your running app. Compile to ARM & x64 machine code for mobile, desktop, and backend. Or compile to JavaScript for the web. Mature and complete async-await for user interfaces containing event-driven code, paired with isolate-based concurrency. A programming language optimized for building user interfaces with features such as sound null safety, the spread operator for expanding collections, and collection if for customizing UI for each platform. A programming language that is easy to learn, with a familiar syntax. Make changes to your source code iteratively, using hot reload to instantly see the effect in the running app.
    Downloads: 37 This Week
    Last Update:
    See Project
  • 11
    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: 32 This Week
    Last Update:
    See Project
  • 12
    The Julia Programming Language

    The Julia Programming Language

    High-level, high-performance dynamic language for technical computing

    Julia is a fast, open source high-performance dynamic language for technical computing. It can be used for data visualization and plotting, deep learning, machine learning, scientific computing, parallel computing and so much more. Having a high level syntax, Julia is easy to use for programmers of every level and background. Julia has more than 2,800 community-registered packages including various mathematical libraries, data manipulation tools, and packages for general purpose computing. Libraries from Python, R, C/Fortran, C++, and Java can also be used.
    Downloads: 32 This Week
    Last Update:
    See Project
  • 13
    V Programming Language

    V Programming Language

    Simple, fast, safe, compiled language for developing software

    Simple language for building maintainable programs. You can learn the entire language by going through the documentation over a weekend, and in most cases, there's only one way to do something. This results in simple, readable, and maintainable code. Despite being simple, V gives a lot of power to the developer and can be used in pretty much every field, including systems programming, webdev, gamedev, GUI, mobile, science, embedded, tooling, etc. V avoids doing unnecessary allocations in the first place by using value types, and string buffers, promoting a simple abstraction-free code style. Most objects (~90-100%) are freed by V's auto-free engine: the compiler inserts necessary free calls automatically during compilation. A remaining small percentage of objects is freed via GC. The developer doesn't need to change anything in their code. "It just works", like in Python, Go, or Java, except there's no heavy GC tracing everything or expensive RC for each object.
    Downloads: 24 This Week
    Last Update:
    See Project
  • 14
    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: 22 This Week
    Last Update:
    See Project
  • 15
    OCaml

    OCaml

    The core OCaml system: compilers, runtime system, base libraries

    OCaml is a general-purpose, industrial-strength programming language with an emphasis on expressiveness and safety. OCaml’s powerful type system means more bugs are caught at compile-time, and large, complex codebases are easier to maintain. This makes it a good language for running critical code. At the same time, sophisticated inference makes the type system unobtrusive, creating a smooth developer experience. OCaml has two compilers. One is a bytecode compiler that generates small, portable executables and is very fast. The other is a native code compiler that produces more efficient machine code; its performance matches the highest standards of modern compilers. OCaml has great support for the most popular editors. VS Code is recommended for beginners, and for power users there is deep integration with Vim and Emacs. OCaml has a rich and dynamic community and best-in-class tooling.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 16
    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: 173 This Week
    Last Update:
    See Project
  • 17
    PureScript

    PureScript

    A strongly-typed language that compiles to JavaScript

    Compile to readable JavaScript and reuse existing JavaScript code easily. An extensive collection of libraries for development of web applications, web servers, apps and more. Excellent tooling and editor support with instant rebuilds. An active community with many learning resources. Build real-world applications using functional techniques and expressive types, such as: Algebraic data types and pattern matching. Row polymorphism and extensible records. Higher kinded types and type classes with functional dependencies, as well as higher-rank polymorphism. Precompiled binaries are available for OSX, Linux, and Windows. The Pursuit package database hosts searchable documentation for PureScript packages. The recommended build tool for PureScript is Spago, which can be installed using npm.
    Downloads: 16 This Week
    Last Update:
    See Project
  • 18
    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: 15 This Week
    Last Update:
    See Project
  • 19
    Chez Scheme

    Chez Scheme

    A programming language and an implementation of that language

    Chez Scheme is both a programming language and an implementation of that language, with supporting tools and documentation. As a superset of the language described in the Revised6 Report on the Algorithmic Language Scheme (R6RS), Chez Scheme supports all standard features of Scheme, including first-class procedures, proper treatment of tail calls, continuations, user-defined records, libraries, exceptions, and hygienic macro expansion. The Chez Scheme implementation consists of a compiler, run-time system, and programming environment. Although an interpreter is available, all code is compiled by default. Source code is compiled on-the-fly when loaded from a source file or entered via the shell. A source file can also be precompiled into a stored binary form and automatically recompiled when its dependencies change. Whether compiling on the fly or precompiling, the compiler produces optimized machine code, with some optimization across separately compiled library boundaries.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 20
    Lua

    Lua

    The Lua development repository, as seen by the Lua team

    Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description. Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode with a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping. Lua is designed, implemented, and maintained by a team at PUC-Rio, the Pontifical Catholic University of Rio de Janeiro in Brazil. Lua was born and raised in Tecgraf, formerly the Computer Graphics Technology Group of PUC-Rio. Lua is now housed at LabLua, a laboratory of the Department of Computer Science of PUC-Rio.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 21
    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: 14 This Week
    Last Update:
    See Project
  • 22
    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: 12 This Week
    Last Update:
    See Project
  • 23
    Skylark

    Skylark

    Skylark in Go: the Skylark configuration language

    Skylark, now known as Starlark, is an interpreter for a Python-like language implemented in Go. It is designed as a lightweight, deterministic, and embeddable configuration and scripting language ideal for use within larger applications. Skylark maintains Python’s familiar syntax and high-level data types while omitting features that could cause nondeterminism, such as concurrency and dynamic module imports. The interpreter supports first-class functions, dictionaries, lists, and comprehensions, allowing developers to define reusable logic and structured configuration data. Originally developed for Bazel, Google’s build tool, Skylark enables users to define build rules and macros that extend system functionality. Because it runs deterministically and isolates execution from system state, it’s well-suited for reproducible build systems and other sandboxed environments. The Go implementation focuses on parallel scalability and easy integration into Go-based projects.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 24
    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: 10 This Week
    Last Update:
    See Project
  • 25
    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: 111 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next