Compiler

Top 23 Compiler Open-Source Projects

  • Next.js

    The React Framework

  • Project mention: Tips from open-source: Set a maximum time limit on fetch using Promise.race() | dev.to | 2024-05-07

    // source: https://github.com/vercel/next.js/blob/canary/packages/next/src/lib/worker.ts#L121C15-L129C16 for (;;) { onActivity() const result = await Promise.race(\[ (this.\_worker as any)\[method\](...args), restartPromise, \]) if (result !== RESTARTED) return result if (onRestart) onRestart(method, args, ++attempts) }

  • rust

    Empowering everyone to build reliable and efficient software.

  • Project mention: Rust to .NET compiler – Progress update | news.ycombinator.com | 2024-05-03

    > There are online Rust compilers and interpreters already if you just want to rapid prototype and develop ideas in Rust

    You are responding to one of the key developers of Rust early on[1], who's been working with the language for 14 years at that point.

    [1] https://github.com/rust-lang/rust/graphs/contributors?from=2... and he's still #16 in commits overall today, despite almost no activity on the rust compiler since 2014.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • Svelte

    Cybernetically enhanced web apps

  • Project mention: Securing SvelteKit Apps with Keycloak | dev.to | 2024-05-06

    Svelte and specifically, SvelteKit is an open source web framework that makes developing web applications easier.

  • webpack

    A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows for loading parts of the application on demand. Through "loaders", modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.

  • Project mention: Practical and Beginner friendly guide for speeding up your web-apps | dev.to | 2024-05-01

    There are various tools available that manage the size of bundled assets. We are going to use the example of a popular and widely used bundler named Webpack, and practically look at many of the optimization techniques it offers.

  • sway

    🌴 Empowering everyone to build reliable and efficient smart contracts. (by FuelLabs)

  • Gatsby

    The best React-based framework with performance, scalability and security built in.

  • Project mention: Building static websites | dev.to | 2024-04-29

    The first time I started building static websites is when I discovered Gatsby. I built several projects using Gatsby and hosted it on Netlify free tier. It felt like a really robust architecture and I loved that it was free.

  • kotlin

    The Kotlin Programming Language.

  • Project mention: Kotlin 2.0 RC1 | news.ycombinator.com | 2024-04-16
  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • parcel

    The zero configuration build tool for the web. πŸ“¦πŸš€

  • Project mention: How and why do we bundle zx? | dev.to | 2024-05-06

    At first we wanted to just get rid of all the helper utilities. Keep only the kernel, but this would mean a loss of backward compatibility. We needed some efficient code processing instead with recomposition and tree-shaking. We needed a bundler. But which one? Our testing approach relies on targets, not sources. We rebuilt the project frequently, speed was critical requirement. In essence, we chose a solution from a couple of among all available alternatives: esbuild and parcel. Esbuild won. Specifically in our case, it proved to be more productive and customizable.

  • Babel (Formerly 6to5)

    🐠 Babel is a compiler for writing next generation JavaScript.

  • Project mention: Do You Need an SBOM? | dev.to | 2024-05-06
  • esbuild

    An extremely fast bundler for the web

  • Project mention: Esbuild implements the JavaScript decorators proposal | news.ycombinator.com | 2024-05-07
  • v

    Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io

  • Project mention: V Language Review (2023) | news.ycombinator.com | 2024-02-24

    Their site is clearly showing the language is in beta. The V documentation also states that autofree is WIP, and to use the GC instead. This isn't a corporate created language, but looks to be a true volunteer open source effort from people around the world.

    Their community, in comparison to others, even has their discussions open and open threads for criticism[1]. These

    [1]https://github.com/vlang/v/discussions/7610

  • carbon-lang

    Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)

  • Project mention: Carbon Copy Newsletter No.2 | news.ycombinator.com | 2024-04-08
  • marked

    A markdown parser and compiler. Built for speed.

  • Project mention: Eleventy vs. Next.js for static site generation | dev.to | 2023-12-14

    Next, install gray-matter to extract metadata from the front matter of markdown files, and marked to convert the markdown files to HTML:

  • zig

    General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

  • Project mention: Memory-mapped IO registers in Zig. (2021) | news.ycombinator.com | 2024-04-23

    There is an issue proposing this approach: https://github.com/ziglang/zig/issues/4284

  • swc

    Rust-based platform for the Web

  • Project mention: Storybook 8 Beta | dev.to | 2024-02-06

    First, we switched the default compiler for new projects from Babel to SWC (Speedy Web Compiler). SWC is dramatically faster than Babel and requires zero configuration. We’ll continue to support Babel in any project currently using it.

  • typst

    A new markup-based typesetting system that is powerful and easy to learn.

  • Project mention: German state ditches Microsoft for Linux and LibreOffice | news.ycombinator.com | 2024-04-04

    https://github.com/typst/typst looks promising, both the language and the tooling. I wonder where it will find its place in a world that is dominated by either Word or LaTex.

  • llvm-project

    The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.

  • Project mention: Playing with DragonRuby Game Toolkit (DRGTK) | dev.to | 2024-05-06

    This Ruby implementation is based on mruby and LLVM and it’s commercial software but cheap.

  • V8

    The official mirror of the V8 Git repository

  • Project mention: Boehm Garbage Collector | news.ycombinator.com | 2024-01-21

    https://chromium.googlesource.com/v8/v8.git/+/HEAD/include/c...

    Due to the nature of web engine workloads migrating objects to being GC'd isn't performance negative (as most people would expect). With care it can often end up performance positive.

    There are a few tricks that Oilpan can apply. Concurrent tracing helps a lot (e.g. instead of incrementing/decrementing refs, you can trace on a different thread), in addition when destructing objects, the destructors typically become trivial meaning the object can just be dropped from memory. Both these free up main thread time. (The tradeoff with concurrent tracing is that you need atomic barriers when assigning pointers which needs care).

    This is on top of the safey improvements you gain from being GC'd vs. smart pointers, etc.

    One major tradeoff that UAF bugs become more difficult to fix, as you are just accessing objects which "should" be dead.

  • Graal

    GraalVM compiles Java applications into native executables that start instantly, scale fast, and use fewer compute resources πŸš€

  • Project mention: Java 23: The New Features Are Officially Announced | news.ycombinator.com | 2024-04-17

    Contrary to what vocal Kotlin advocates might believe, Kotlin only matters on Android, and that is thanks to Google pushing it no matter what.

    https://spectrum.ieee.org/the-top-programming-languages-2023

    https://snyk.io/reports/jvm-ecosystem-report-2021/

    And even so, they had to conceed Android and Kotlin on their own, without the Java ecosystem aren't really much useful, thus ART is now updatable via Play Store, and currently supports OpenJDK 17 LTS on Android 12 and later devices.

    As for your question regarding numbers, mostly Java 74.6%, C++ 13.7%, on the OpenJDK, other JVM implementations differ, e.g. GraalVM is mostly Java 91.8%, C 3.6%.

    https://github.com/openjdk/jdk

    https://github.com/oracle/graal

    Two examples from many others, https://en.wikipedia.org/wiki/List_of_Java_virtual_machines

  • Roslyn

    The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.

  • Project mention: Asynchronous Programming in C# | news.ycombinator.com | 2024-04-30

    My understanding is that the .NET team is working toward this with Interceptors: https://github.com/dotnet/roslyn/blob/main/docs/features/int...

  • RustPython

    A Python Interpreter written in Rust

  • Project mention: Encapsulation in Rust and Python | dev.to | 2024-04-05

    Integrating Rust into Python, Edward Wright, 2021-04-12 Examples for making rustpython run actual python code Calling Rust from Python using PyO3 Writing Python inside your Rust code β€” Part 1, 2020-04-17 RustPython, RustPython Rust for Python developers: Using Rust to optimize your Python code PyO3 (Rust bindings for Python) Musing About Pythonic Design Patterns In Rust, Teddy Rendahl, 2023-07-14

  • assemblyscript

    A TypeScript-like language for WebAssembly.

  • Project mention: Borgo is a statically typed language that compiles to Go | news.ycombinator.com | 2024-04-30

    I like your take but JavaScript was literally the assembly language of the web until WASM came along. There was no other language that TypeScript could compile to.

    This train of thought lead me to discover AssemblyScript! https://www.assemblyscript.org/

  • Nim

    Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).

  • Project mention: 3 years of fulltime Rust game development, and why we're leaving Rust behind | news.ycombinator.com | 2024-04-26
  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Compiler related posts

  • Rust to .NET compiler – Progress update

    2 projects | news.ycombinator.com | 3 May 2024
  • Esbuild implements the JavaScript decorators proposal

    1 project | news.ycombinator.com | 7 May 2024
  • Playing with DragonRuby Game Toolkit (DRGTK)

    2 projects | dev.to | 6 May 2024
  • Results of the Grand C++ Error Explosion Competition

    1 project | news.ycombinator.com | 6 May 2024
  • Ask HN: Would you use a Low-effort Microservice Builder?

    2 projects | news.ycombinator.com | 6 May 2024
  • How and why do we bundle zx?

    9 projects | dev.to | 6 May 2024
  • A History of C Compilers – Part 1: Performance, Portability and Freedom

    1 project | news.ycombinator.com | 5 May 2024
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 8 May 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more β†’

Index

What are some of the best open-source Compiler projects? This list will help you:

Project Stars
1 Next.js 120,804
2 rust 93,266
3 Svelte 76,639
4 webpack 64,179
5 sway 63,134
6 Gatsby 55,023
7 kotlin 47,594
8 parcel 43,122
9 Babel (Formerly 6to5) 42,927
10 esbuild 37,307
11 v 35,296
12 carbon-lang 32,216
13 marked 31,926
14 zig 30,773
15 swc 30,053
16 typst 28,505
17 llvm-project 25,563
18 V8 22,671
19 Graal 19,807
20 Roslyn 18,528
21 RustPython 17,649
22 assemblyscript 16,455
23 Nim 16,104

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com