Open Source Mac Programming Languages - Page 3

Programming Languages for Mac

View 96 business solutions
  • 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
  • $300 in Free Credit Towards Top Cloud Services Icon
    $300 in Free Credit Towards Top Cloud Services

    Build VMs, containers, AI, databases, storage—all in one place.

    Start your project in minutes. After credits run out, 20+ products include free monthly usage. Only pay when you're ready to scale.
    Get Started
  • 1
    MoonScript

    MoonScript

    A language that compiles to Lua

    MoonScript is a dynamic scripting language that compiles into Lua. It gives you the power of one of the fastest scripting languages combined with a rich set of features. MoonScript can either be compiled into Lua and run at a later time, or it can be dynamically compiled and run using the moonloader. It’s as simple as requiring "moonscript" in order to have Lua understand how to load and run any MoonScript file. Because it compiles right into Lua code, it is completely compatible with alternative Lua implementations like LuaJIT, and it is also compatible with all existing Lua code and libraries. The command line tools also let you run MoonScript directly from the command line, like any first-class scripting language.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 2
    Pkl

    Pkl

    A configuration as code language with rich validation and tooling

    pkl is a purpose-built configuration-as-code language developed by Apple that combines declarative structure, validation, and tooling to improve over traditional configuration formats like JSON, YAML, or Plists. Its goal is to let you write configuration logic (modules, imports, conditions, defaults) while still producing static outputs suitable for tools that expect JSON, YAML, or other formats. Configurations in Pkl are type-safe and support validation constraints (e.g. bounds, relations) so many errors can be caught before deployment. The language is embeddable, meaning it can run inside applications (Java, Swift, Go, etc.) to load configuration dynamically with the same safety guarantees. There’s also code generation support: writing Pkl modules can generate matching classes or data structures in target languages (Swift, Go, Java, Kotlin) so runtime config and statically typed code stay in sync.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 3
    Starlark in Go

    Starlark in Go

    Starlark in Go: the Starlark configuration language, implemented in Go

    starlark-go is the official Go implementation of the Starlark programming language, a Python-like, dynamically typed configuration and scripting language originally developed for the Bazel build system. Starlark combines Python’s expressiveness and readability with deterministic execution, making it ideal for defining build configurations, scripting automation, and embedding domain-specific logic in applications. The Go-based interpreter allows developers to run or embed Starlark programs directly within Go applications, extending them with user-defined scripts and configurable logic. Unlike Python, Starlark supports parallel execution across multiple threads and maintains deterministic behavior, making it suitable for scalable and reproducible workloads. It offers familiar syntax features such as dictionaries, lists, and first-class functions with lexical scoping.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 4
    choosenim

    choosenim

    Tool for installing and managing multiple versions of Nim language

    choosenim is a version manager for the Nim programming language, allowing users to install, update, and switch between different versions of Nim easily.
    Downloads: 4 This Week
    Last Update:
    See Project
  • Gemini 3 and 200+ AI Models on One Platform Icon
    Gemini 3 and 200+ AI Models on One Platform

    Access Google's best plus Claude, Llama, and Gemma. Fine-tune and deploy from one console.

    Build generative AI apps with Vertex AI. Switch between models without switching platforms.
    Start Free
  • 5
    stylus

    stylus

    Expressive, robust, feature-rich CSS language built for nodejs

    Stylus is a revolutionary new language, providing an efficient, dynamic, and expressive way to generate CSS. Supporting both an indented syntax and regular CSS style. Installing Stylus is very easy once you have Node.js. So get the binaries for your platform and make sure that they also include npm, Node’s package manager. Stylus features powerful in-language function definitions. Function definitions appear identical to mixins; however, functions may return a value. Optional arguments may default to a given expression. With Stylus we may even default arguments to earlier arguments! Stylus is an innovative stylesheet language that compiles down to CSS. Inspired by SASS, Stylus is built with node.js and capable of running in the browser. Stylus is “pythonic” (i.e. indentation-based). Whitespace is significant, so we substitute { and } with an indent, and an outdent. Stylus, just like CSS, allows you to define properties for several selectors at once through comma separation.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 6
    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: 32 This Week
    Last Update:
    See Project
  • 7
    Inform

    Inform

    The core software distribution for the Inform 7 programming language

    Inform is the core distribution of a powerful programming language and design system created for writing interactive fiction, where authors describe stories as text adventure games that players explore through typed commands. The language is distinctive for its natural-language-inspired syntax that reads almost like English, allowing storytellers to define rooms, objects, characters, and narrative logic in an intuitive way that emphasizes expressive clarity and literary structure. When you write in Inform, the source code is compiled into playable story files that run on interactive fiction virtual machines such as Z-machine or Glulx, enabling classic text-based gameplay with modern tooling. Inform handles the underlying complexities of text parsing, world modeling, state management, and player input, so authors can focus on narrative design rather than low-level engine details.
    Downloads: 3 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: 3 This Week
    Last Update:
    See Project
  • 9
    Pyro

    Pyro

    Deep universal probabilistic programming with Python and PyTorch

    Pyro is a flexible, universal probabilistic programming language (PPL) built on PyTorch. It allows for expressive deep probabilistic modeling, combining the best of modern deep learning and Bayesian modeling. Pyro is centered on four main principles: Universal, Scalable, Minimal and Flexible. Pyro is universal in that it can represent any computable probability distribution. It scales easily to large datasets with minimal overhead, and has a small yet powerful core of composable abstractions that make it both agile and maintainable. Lastly, Pyro gives you the flexibility of automation when you want it, and control when you need it.
    Downloads: 3 This Week
    Last Update:
    See Project
  • AI-powered service management for IT and enterprise teams Icon
    AI-powered service management for IT and enterprise teams

    Enterprise-grade ITSM, for every business

    Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity. Maximize operational efficiency with refreshingly simple, AI-powered Freshservice.
    Try it Free
  • 10
    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: 3 This Week
    Last Update:
    See Project
  • 11
    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: 3 This Week
    Last Update:
    See Project
  • 12
    Yampa

    Yampa

    Functional Reactive Programming domain-specific language

    Yampa is a Functional Reactive Programming (FRP) library for Haskell, specifically designed for modeling hybrid systems that involve both continuous and discrete time behaviors, such as games, simulations, robotics, and reactive systems. Based on the concept of signal functions, Yampa offers a declarative way to model time-varying values and their transformations, making it easier to manage complex time-based logic without resorting to imperative state management. It is grounded in strong mathematical foundations and is well-suited for real-time and interactive systems where temporal behaviors are central.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 13
    X11-Basic

    X11-Basic

    A BASIC interpreter and compiler with graphics.

    X11-Basic is a dialect of the BASIC programming language with graphics capability that integrates features like shell scripting, cgi-Programming and full graphical visualisation into the easy to learn basic language on modern computers.
    Leader badge
    Downloads: 20 This Week
    Last Update:
    See Project
  • 14
    SuperCollider

    SuperCollider

    Real-time audio synthesis engine and music programming language

    N.B. SuperCollider is now hosted at GitHub, and the most recent versions can be downloaded from there. http://supercollider.github.io A real time audio synthesis engine, and an object-oriented programming language specialised for music. SuperCollider was created in 1996 by James McCartney, now (since version 3) released as free software.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 15
    DaVinci Concurrente

    DaVinci Concurrente

    Enseñanza programación estructurada concurrente español inicial

    DaVinci Concurrente es un lenguaje orientado a la enseñanza de la programación estructurada para fortalecer los cimientos base de su aprendizaje, tanto en la etapa inicial de la programación secuencial como en la introducción a los conceptos básicos de la programación concurrente. Permite la visualización de la ejecución a través de una ciudad en la cual se puede controlar uno o más robots. Cada robot puede realizar diferentes acciones (por ejemplo tomar flores en la intersección que se encuentra).
    Downloads: 54 This Week
    Last Update:
    See Project
  • 16
    Autocxx

    Autocxx

    Tool for safe ergonomic Rust/C++ interop driven from existing C++

    autocxx is an open source Rust tool and procedural macro designed to enable automatic, safe interoperability between C++ and Rust. It integrates the functionality of bindgen (for parsing and generating Rust bindings from C++ headers) with cxx (for safe and idiomatic Rust–C++ communication), automating the creation of bridges between the two languages. With autocxx, developers can include C++ headers directly in Rust source code and automatically generate bindings for the corresponding C++ classes, functions, and types. This approach greatly simplifies working with existing C++ libraries in Rust while maintaining safety and memory correctness. By reducing the amount of boilerplate and manual configuration typically needed for FFI (Foreign Function Interface) bindings, autocxx allows developers to focus on higher-level logic rather than low-level integration details.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 17
    Beef Programming Language

    Beef Programming Language

    Beef Programming Language

    Beef is a high-performance multi-paradigm open source programming language with a focus on developer productivity. The Beef Development Tools include an IDE with a general-purpose debugger capable of debugging native applications written in any language. The IDE supports productivity features such as autocomplete, fix-its, reformatting, refactoring tools, type inspection, hot compilation, and a built-in profiler. Beef allows for safely mixing different optimization levels on a per-type or per-method level, allowing for performance-critical code to be executed at maximum speed without affecting the debuggability of the rest of the application. Beef can detect memory leaks in real-time. As with most safety features in Beef, this can be turned off in Release builds for performance-critical applications. The Beef IDE supports productivity features such as autocomplete, fixits, reformatting, refactoring tools, type inspection, runtime code compilation (hot code swapping).
    Downloads: 2 This Week
    Last Update:
    See Project
  • 18
    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
  • 19
    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: 2 This Week
    Last Update:
    See Project
  • 20
    Edward

    Edward

    A probabilistic programming language in TensorFlow

    A library for probabilistic modeling, inference, and criticism. Edward is a Python library for probabilistic modeling, inference, and criticism. It is a testbed for fast experimentation and research with probabilistic models, ranging from classical hierarchical models on small data sets to complex deep probabilistic models on large data sets. Edward fuses three fields, Bayesian statistics and machine learning, deep learning, and probabilistic programming. Edward is built on TensorFlow. It enables features such as computational graphs, distributed training, CPU/GPU integration, automatic differentiation, and visualization with TensorBoard. Expectation-Maximization, pseudo-marginal and ABC methods, and message passing algorithms.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 21
    Fennel

    Fennel

    Lua Lisp Language

    Fennel is a programming language that brings together the speed, simplicity and reach of Lua with the flexibility of a lisp syntax and macro system. Full Lua compatibility: Easily call any Lua function or library from Fennel and vice-versa. Zero overhead: Compiled code should be just as efficient as hand-written Lua. Compile-time macros: Ship compiled code with no runtime dependency on Fennel. Embeddable: Fennel is a one-file library as well as an executable. Embed it in other programs to support runtime extensibility and interactive development. Anywhere you can run Lua code, you can run Fennel code. Fennel is a lisp that compiles to Lua. It aims to be easy to use, expressive and has almost zero overhead compared to writing Lua directly. Building Fennel from source allows you to use versions of Fennel that haven't been released, and it makes contributing to Fennel easier.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 22
    Prompt Declaration Language

    Prompt Declaration Language

    Prompt Declaration Language is a declarative prompt programming lang

    LLMs will continue to change the way we build software systems. They are not only useful as coding assistants, providing snipets of code, explanations, and code transformations, but they can also help replace components that could only previously be achieved with rule-based systems. Whether LLMs are used as coding assistants or software components, reliability remains an important concern. LLMs have a textual interface and the structure of useful prompts is not captured formally. Programming frameworks do not enforce or validate such structures since they are not specified in a machine-consumable way. The purpose of the Prompt Declaration Language (PDL) is to allow developers to specify the structure of prompts and to enforce it, while providing a unified programming framework for composing LLMs with rule-based systems.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 23
    The Acton programming language

    The Acton programming language

    The Acton Programming Language

    Write programs that seamlessly run as a distributed system over an entire data center or region. All without a single line of RPC code. Acton automatically persists the state of your application (orthogonal persistence) to a built-in distributed backend. No need to use a database or message broker ever again. 0 lines of persistence code. Built-in redundancy; Acton's transactional, high-performance distributed RTS can seamlessly resume application state after hardware failures. Never stop for an upgrade; Live upgrade your running application through compiler-supported code and data migration. Acton programs, and the actor model, work well from simple script-style applications on a single machine up to large distributed systems across a Data Center. Run at your scale.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 24
    Zen C

    Zen C

    Write like a high-level language, run like C

    Zen C is a minimal yet expressive implementation of the C programming language that aims to balance simplicity with practical capability, making it ideal for educational use, language experimentation, and small-scale systems programming. It provides a clean syntax and semantics that closely mirror classic C while enforcing stricter rules to eliminate common pitfalls like undefined behaviors or hidden conversions that often cause bugs. Zen-C includes a lightweight compiler front-end and runtime that can target multiple platforms, enabling users to compile and run code on both desktop and embedded environments without heavy tooling. Because it prioritizes clarity and predictability, the language makes it easier for learners to understand core systems concepts while still accessing low-level memory control and performance.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 25
    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: 37 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB