opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

Dingo: A Modern Language That Compiles to Go
GitHub RepoImpressions272

Project Description

View on GitHub

Dingo: A Modern Language That Compiles to Go

Ever feel like you want the performance and ecosystem of Go, but with a more modern syntax? Maybe something a little less verbose, with a few quality-of-life features that newer languages have spoiled us with? That’s exactly the itch Dingo aims to scratch.

It’s not a framework or a library—it’s an entirely new language. But instead of building a whole new runtime, Dingo compiles down to plain, readable Go. You get a fresh syntax while keeping all the benefits of Go’s tooling, concurrency model, and deployment story.

What It Does

Dingo is a statically-typed, compiled programming language. You write code in .dingo files, run it through the Dingo compiler, and it outputs standard Go source code. This Go code can then be built and run like any other Go program. It’s essentially a frontend language for the Go compiler, offering an alternative syntax and some additional features.

Why It’s Cool

The clever part is the approach. By targeting Go source code, Dingo sidesteps the monumental task of creating a new compiler backend, garbage collector, or runtime. It leverages the entire Go ecosystem immediately.

While the project is in early stages, the vision includes some compelling ideas:

  • Cleaner Syntax: Aims to reduce boilerplate common in Go.
  • Enhanced Features: Exploring built-in support for concepts like optionals, more expressive error handling, and other modern language constructs.
  • Full Interop: Since it compiles to Go, you can seamlessly use existing Go packages. The generated Go code is meant to be human-readable, which is a big plus for debugging.
  • Go’s Strengths Intact: You still get goroutines, channels, and the fantastic standard library, just through a different syntax.

It’s a pragmatic experiment in language design. It asks: "What could Go look like with a different skin and a few more features under the hood?"

How to Try It

Ready to take a look? The project is open source on GitHub.

  1. Head over to the repository: github.com/paoloanzn/free-code.
  2. Check the README for the latest build and installation instructions. As an early-stage project, the setup might involve building from source.
  3. Look for examples in the repo to see the Dingo syntax and how it translates to Go.

Since it’s actively developing, the best way to try it is to clone the repo, explore the example code, and see the translation in action.

Final Thoughts

Dingo is a fascinating side-project for anyone interested in language design or a Go developer curious about syntactic evolution. It’s not something to rewrite your production microservices in (yet), but it’s a cool playground.

It demonstrates how you can experiment with new language ideas on top of a rock-solid foundation like Go’s toolchain. Whether it gains traction or not, projects like Dingo are great for the community—they challenge assumptions and explore what’s possible. If you’ve ever thought, "I love Go, but I wish it had X," Dingo’s approach might just be the most practical way to find out what that looks like.


Follow for more interesting projects: @githubprojects

Back to Projects
Project ID: 43c26216-5ed6-4a34-8edd-b446394b58a2Last updated: April 17, 2026 at 06:02 AM