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

  • Get the most trusted enterprise browser Icon
    Get the most trusted enterprise browser

    Advanced built-in security helps IT prevent breaches before they happen

    Defend against security incidents with Chrome Enterprise. Create customizable controls, manage extensions and set proactive alerts to keep your data and employees protected without slowing down productivity.
    Download Chrome
  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    Build gen AI apps with an all-in-one modern database: MongoDB Atlas

    MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
    Start Free
  • 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: 985 This Week
    Last Update:
    See Project
  • 2
    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: 26 This Week
    Last Update:
    See Project
  • 3
    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: 244 This Week
    Last Update:
    See Project
  • 4
    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: 12 This Week
    Last Update:
    See Project
  • 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
  • 5

    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: 57 This Week
    Last Update:
    See Project
  • 6
    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: 7 This Week
    Last Update:
    See Project
  • 7
    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: 37 This Week
    Last Update:
    See Project
  • 8
    ZIG

    ZIG

    General-purpose programming language and toolchain

    A general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 9
    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: 5 This Week
    Last Update:
    See Project
  • Build Securely on Azure with Proven Frameworks Icon
    Build Securely on Azure 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
  • 10
    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: 4 This Week
    Last Update:
    See Project
  • 11
    MetaCall Core

    MetaCall Core

    The ultimate polyglot programming experience

    A polyglot runtime that enables seamless execution of multiple programming languages within the same environment, improving interoperability between different codebases.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 12
    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: 3 This Week
    Last Update:
    See Project
  • 13
    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: 3 This Week
    Last Update:
    See Project
  • 14
    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
  • 15
    Wren

    Wren

    Wren is a small, fast, class-based concurrent scripting language

    Think Smalltalk in a Lua-sized package with a dash of Erlang and wrapped up in a familiar, modern syntax. The VM implementation is under 4,000 semicolons. You can skim the whole thing in an afternoon. It's small, but not dense. It is readable and lovingly commented. A fast single-pass compiler to tight bytecode and a compact object representation help Wren compete with other dynamic languages. There are lots of scripting languages out there, but many have unusual or non-existent object models. Wren places classes front and center. Lightweight fibers are core to the execution model and let you organize your program into an army of communicating coroutines. Wren is intended for embedding in applications. It has no dependencies, a small standard library, and an easy-to-use C API. It compiles cleanly as C99, C++98 or anything later.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 16
    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
  • 17
    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
    Downloads: 11 This Week
    Last Update:
    See Project
  • 18
    SNOBOL4, while known primarily as a string language excels at any task involving symbolic manipulations. It provides run time typing, garbage collection, user data types, on the fly compilation.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 19
    Programming language designed to simplify the development of small and large-scale networked applications. PROSE includes an execution engine and language that compiles into platform-independent bytecode. Bytecode can also be assembled directly.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 20
    yorick

    yorick

    scientific programming language and graphics

    Yorick is an interpreted programming language for scientific simulations or calculations, postprocessing or steering large simulation codes, interactive scientific graphics, and reading, writing, or translating large files of numbers.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 21
    Ficl is a lightweight, embeddable scripting language designed to be incorporated into other programs, including memory constrained embedded systems. Ficl conforms to the 1994 ANSI Standard for Forth, and provides several useful extensions including object oriented programming that can wrap compiled code and hardware interfaces. Unlike Lua or Python, Ficl acts as a component of your system - you feed it stuff to do, it does the stuff, and comes back to you for more. You can export compiled code to Ficl, execute Ficl code from your compiled code, or interact. Your choice. Ficl includes a simple but capable object model that can wrap existing data structures. Applications include scripting, hardware bring-up, rapid prototyping, and system extensions.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 22
    Very high level modular programming language with multiple dispatch, object-oriented programming, functional closures and goal-directed programming.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 23
    Ring

    Ring

    Simple and flexible programming language for applications development

    The Ring is a practical general-purpose multi-paradigm language. The supported programming paradigms are imperative, procedural, object-oriented, declarative using nested structures, functional, meta programming and natural programming. The language is portable (MS-DOS, Windows, Linux, macOS, Android, WebAssembly, Microcontrollers, etc.) and can be used to create Console, GUI, Web, Games and Mobile applications. The language is designed to be simple, small and flexible. Ring is distributed as a Free-Open Source project under the MIT License.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    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: 1 This Week
    Last Update:
    See Project
  • 25

    aime

    A C-like, high level programming language and interpreter.

    aime is a programming language intended for application extension purposes. It is simple, with a C like syntax and automatic resource management. The interpreter interface has many options for connecting the interpreted programs to the embedding application state. It allows application supervision with regard to such concerns as execution length, memory allocation, error reporting. A standalone interpreter together with many demo/test programs is included.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.