Open Source Linux Programming Languages - Page 4

Programming Languages for Linux

View 99 business solutions
  • $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
  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Start Free
  • 1
    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: 2 This Week
    Last Update:
    See Project
  • 2
    Curv

    Curv

    A language for making art using mathematics

    Curv is a programming language for creating art using mathematics. It's a 2D and 3D geometric modelling tool that supports full colour, animation and 3D printing. Curv is a simple, powerful, dynamically typed, pure functional programming language. Curv is easy to use for beginners. It has a standard library of predefined geometric shapes, plus operators for transforming and combining shapes. These can be plugged together like Lego to make 2D and 3D models. Coloured shapes are represented using Function Representation (F-Rep). They can be infinitely detailed, infinitely large, and any shape or colour pattern that can be described using mathematics can be represented exactly. Curv exposes the full power of F-Rep programming to experts. The standard geometry library is written entirely in Curv. Many of the demos seen on shadertoy.com can be reproduced in Curv, using shorter, simpler programs. Experts can package techniques used on shadertoy as high-level operations for use by beginners.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 3
    Higher Order Kind

    Higher Order Kind

    A modern proof language

    A Kubernetes-based tool for creating local clusters, ideal for testing and CI/CD.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 4
    Learn Go

    Learn Go

    Master the fundamentals and advanced features of the Go language

    Learn Go is a learning-focused repository built to teach Go from first principles through more advanced language and ecosystem features. It takes a course-like approach, starting with environment setup and the “Hello world” basics, then moving into variables, types, formatting, control flow, and functions. From there, it expands into Go’s practical structure for real projects, including modules, packages, and workspaces, plus useful commands for building and working with programs. The content is designed to make Go’s priorities tangible: simplicity, reliability, and efficiency, while still giving you enough depth to write idiomatic code. It also anchors learning in credible references, pointing to official documentation, the Go blog, and widely used learning resources. In practice, it serves as a guided path you can follow linearly or revisit as a reference when you hit common Go questions in day-to-day work.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Veeam Data Platform v13.1 - Get Your Free Trial Icon
    Veeam Data Platform v13.1 - Get Your Free Trial

    Secure by design, portable by default. Recover clean, fast, anywhere. Start a free trial.

    Try Veeam Data Platform today. Experience the unified platform that's secure by design, portable by default, and proven to recover clean, fast, and anywhere.
    Try it Free
  • 5
    Pipelines

    Pipelines

    An experimental programming language for data flow

    Pipelines is a language and runtime for crafting massively parallel pipelines. Unlike other languages for defining data flow, the Pipeline language requires the implementation of components to be defined separately in the Python scripting language. This allows the details of implementations to be separated from the structure of the pipeline while providing access to thousands of active libraries for machine learning, data analysis, and processing.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 6
    RaptorJIT

    RaptorJIT

    A dynamic language for system programming (LuaJIT fork)

    RaptorJIT is a Lua implementation suitable for high-performance low-level system programming. If you want to use a simple dynamic language to write a network stack; a hypervisor; a unikernel; a database; etc, then you have come to the right place.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    Ravi Programming Language

    Ravi Programming Language

    Ravi is a dialect of Lua, featuring limited optional static typing

    Ravi Programming Language is a derivative of Lua 5.3 with limited optional static typing and MIR-based JIT compiler. Ravi is a derivative/dialect of Lua with limited optional static typing and JIT/AOT compilers. The name Ravi comes from the Sanskrit word for the Sun. Lua is perfect as a small embeddable dynamic language so why a derivative? Ravi extends Lua with static typing for greater performance under JIT compilation. However, static typing is optional and therefore Lua 5.3 programs are also valid Ravi programs. There are other attempts to add static typing to Lua (e.g. Typed Lua but these efforts are mostly about adding static type checks in the language while leaving the VM unmodified. So the static typing is to aid programming in the large - the code is eventually translated to standard Lua and executed in the unmodified Lua VM.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    Ring Programming Language

    Ring Programming Language

    Simple and flexible programming language for applications development

    Simple and flexible programming language for applications development. Ring is a practical general-purpose multi-paradigm language. The supported programming paradigms are Imperative, Procedural, Object-Oriented, Functional, Metaprogramming, Declarative programming using nested structures, and Natural programming. The language is portable (MS-DOS, Windows, Linux, macOS, Android, WebAssembly, etc.) and can be used to create Console, GUI, Web, Games, and Mobile applications.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 9
    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: 2 This Week
    Last Update:
    See Project
  • Go from Code to Production URL in Seconds Icon
    Go from Code to Production URL in Seconds

    Cloud Run deploys apps in any language instantly. Scales to zero. Pay only when code runs.

    Skip the Kubernetes configs. Cloud Run handles HTTPS, scaling, and infrastructure automatically. Two million requests free per month.
    Start Free
  • 10
    Unison

    Unison

    A friendly programming language from the future

    Unison is an open source functional programming language based on a simple idea with big implications: code is content-addressed and immutable. Unison’s core idea is that code is immutable and identified by its content. This lets us reimagine many aspects of how a programming language works. We simplify codebase management, Unison has no builds, no dependency conflicts, and renaming things is trivial. The same core idea forms the basis for a runtime that robustly supports dynamic code deployment, allowing a single Unison program to describe entire elastic distributed systems. Though a lot of the work on Unison is still experimental and ongoing, we’re sharing an early alpha release of the language for you to test out. We’ll make a more finished release generally available soon. In the meantime, anyone is welcome to help with alpha testing.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 11

    ats2-lang

    ATS2: Unleashing the potentials of types and templates

    ATS is a statically typed programming language that unifies implementation with formal specification. It is equipped with a highly expressive type system rooted in the framework Applied Type System, which gives the language its name. In particular, both dependent types and linear types are available in ATS. ATS2 extends ATS with an advanced template system, allowing functional programming to be employed in a setting where only bare minimal run-time support is available. In addition, the template system makes ATS2 highly suitable for supporting numerical computation.
    Leader badge
    Downloads: 40 This Week
    Last Update:
    See Project
  • 12
    newRPL

    newRPL

    The classic RPL programming language reimplemented and reimagined.

    This project reimplements from scratch the RPL language made popular by HP programmable calculators, in portable C/C++. The main goal is to release a complete computing environment for various targets. There's currently 4 active targets: the HP 50g, HP39gs and HP40gs calculators and a PC simulator (see the downloads section!). Other ports are planned for the future.
    Downloads: 13 This Week
    Last Update:
    See Project
  • 13
    Jason is a fully-fledged interpreter for an extended version of AgentSpeak, a BDI agent-oriented logic programming language, and is implemented in Java. Using JADE a multi-agent system can be distributed over a network effortlessly. This project was moved to https://jason-lang.github.io
    Downloads: 35 This Week
    Last Update:
    See Project
  • 14

    XBasic

    Basic programming language for Windows & Linux

    XBasic is an integrated software development environment including an advanced compiler, edit/run/debug environment, and interactive GuiDesigner. Latest version 6.3.26-A dated 21-07-24 Most of the document is included in the latest versions. See : https://groups.io/g/MaxReasonsxBasic if you have questions, problems, etc.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 15
    Chapel

    Chapel

    a Productive Parallel Programming Language

    Chapel is an emerging parallel programming language whose design and development are being led by HPE in collaboration with academia, computing labs, and industry. Chapel's goal is to improve the productivity of parallel programmers, from laptops to supercomputers. **Please note that Chapel development has moved to GitHub**
    Downloads: 7 This Week
    Last Update:
    See Project
  • 16

    Xtraitj

    Pure Trait-based Programming on the Java Platform

    Xtraitj is a programming language for pure trait-based programming. It is completely compatible and interoperable with the JAVA platform without reducing the flexibility of traits. Xtraitj is integrated in Eclipse (editor with all the standard tooling) and JDT. It is implemented in Xtext, relying also on Xbase.
    Downloads: 28 This Week
    Last Update:
    See Project
  • 17
    ChaiScript

    ChaiScript

    Embedded Scripting Language Designed for C++

    An easy to use embedded scripting language for C++. ChaiScript is one of the only embedded scripting language designed from the ground up to directly target C++ and take advantage of modern C++ development techniques, working with the developer how they would expect it to work. Being a native C++ application, it has some advantages over existing embedded scripting languages. There are no external tools required, no preprocessor, no libraries, just your C++14 compliant compiler. ChaiScript is fully tested for 32bit and 64bit on Windows (MSVC2013), clang++ and g++. ChaiScript has been making stable releases since 2009. No bug fix or feature is made without a corresponding unit test. By default ChaiScript is thread-safe. Thread safety can be disabled for enhanced performance. ChaiScript is licensed with the BSD license and is free to use in your free or commercial projects.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    Emojicode

    Emojicode

    World’s only programming language that’s bursting with emojis

    Emojicode is an open-source, full-blown programming language consisting of emojis. As a multi-paradigm language, Emojicode features object orientation, optionals, generics, closures, and protocols. Emojicode compiles native machine code using lots of optimizations that make your code fast. Emojicode comes with a comprehensive set of default packages. And you can easily write your own. We believe that Emojis have expressive force. Let’s use that to make programming more fun and accessible. Emojicode is a straightforward language to learn, whatever background you have. Our documentation is known to be excellent and stuffed with walk-through guides and examples. Before you install Emojicode make sure you have a C++ compiler and linker installed. clang++ or g++ are fine, for instance. The Emojicode compiler can only link binaries if such a compiler is available.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    Mangle

    Mangle

    Go library for Datalog-style logical reasoning and domain modeling

    Mangle is a programming language developed by Google for deductive database programming, serving as an advanced extension of Datalog. It is designed to unify and query data from multiple sources in a structured, declarative way while allowing developers to model complex relationships and domain knowledge beyond binary predicates. Mangle enhances traditional Datalog by introducing features such as aggregation, function calls, and optional type-checking, which make it more practical for modern data-intensive applications. Unlike SQL, Mangle’s declarative syntax naturally supports recursion and modular program structure, making it suitable for representing hierarchical or interconnected datasets like dependency graphs or knowledge graphs. The project’s implementation is provided as a Go library, enabling developers to embed Mangle directly into their applications or services, such as database-like gRPC systems.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    Racket

    Racket

    The Racket repository

    Racket is a general-purpose programming language and an ecosystem for language-oriented programming. This repository holds the source code for the core of Racket plus some related packages. The rest of the Racket distribution source code is in other repositories, mostly under the Racket GitHub organization. Racket programmers typically program with functions, records, objects, exceptions, regular expressions, modules, and threads. That is, instead of a “minimalist” language, which is the way that Scheme is often described, Racket offers a rich language with an extensive set of libraries and tools. Libraries are not restricted to exporting values, such as functions; they can also define new syntactic forms. In this sense, Racket isn’t exactly a language at all; it’s more of an idea for how to structure a language so that you can extend it or create entirely new languages.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    Tidal

    Tidal

    Pattern language

    Tidal Cycles (or just Tidal for short) is software for making patterns with code, whether live coding music at algoraves or composing in the studio. It includes a simple and flexible notation for rhythmic sequences and an extensive library of patterning functions for combining and transforming them. This allows you to quickly create complex patterns from simple ingredients. By default, sound is made with the featureful SuperDirt synth/sampler, but you can control other synths using Open Sound Control (OSC) or MIDI. Whether you're using SuperDirt or a synth, every filter and effect can be manipulated independently with Tidal patterns. Tidal is embedded in the Haskell language, although you don't have to learn Haskell to learn Tidal. You can learn Tidal through experimentation and play, most Tidal coders have little or no experience in software engineering.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    TypeSpec

    TypeSpec

    Language for defining cloud service APIs and shapes

    TypeSpec is a language for defining cloud service APIs and shapes. TypeSpec is a highly extensible language with primitives that can describe API shapes common among REST, OpenAPI, gRPC, and other protocols. TypeSpec is excellent for generating many different API description formats, client and service codes, documentation, and many other assets. All this while keeping your TypeSpec definition as a single source of truth. Using TypeSpec, you can create reusable patterns for all aspects of an API and package those reusable patterns into libraries. These patterns establish "guardrails" for API designers and make it easier to follow best practices than to deviate from them. TypeSpec also has a rich linter framework with the ability to flag anti-patterns as well as an emitter framework that lets you control the output to ensure it follows the patterns you want.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    Wuffs

    Wuffs

    Wrangling Untrusted File Formats Safely

    Wuffs is a memory-safe, zero-dependency library and domain-specific language for writing high-performance image codecs and related parsers. Instead of trusting ad-hoc C, Wuffs code is compiled to C with strong bounds, integer, and state checks inserted by construction, aiming to eliminate whole classes of security bugs without a heavy runtime. The design prioritizes predictable performance: decoders avoid dynamic allocation by default, return explicit “short read” signals, and run well in streaming or sandbox-free environments. The project ships battle-tested, CPU-friendly implementations for common image/container formats and bit-twiddly primitives like Huffman and checksum routines. Its standard library emphasizes portability and constant-time behavior where appropriate, which is valuable in security-sensitive contexts. Because the language is purpose-built, the resulting C output is small, auditable, and easy to embed in larger systems.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    Euphoria Programming Language
    This project will allow a group of people to develop the Euphoria programming language: interpreter, translator, binder, documentation etc. For more information visit https://openeuphoria.org
    Leader badge
    Downloads: 13 This Week
    Last Update:
    See Project
  • 25
    OnixOS

    OnixOS

    OnixOS Arch is a Linux-based and open source distribution.

    OnixOS Arch is a Linux-based and open source distribution. It comes with its own system-based functional programming language (O Language). It offers some customized tools for developers.
    Downloads: 11 This Week
    Last Update:
    See Project