goplus/xgo

XGo is a programming language that reads like plain English. But it's also incredibly powerful — it lets you leverage assets from C/C++, Go, Python, and JavaScript/TypeScript, creating a unified software engineering ecosystem. Our vision is to enable everyone to become a builder of the world.

What it solves

XGo is a programming language designed to lower the barrier to software engineering, STEM education, and data science. It replaces complex syntax with a more intuitive, natural-language-like style while maintaining the power to integrate assets from C/C++, Go, Python, and JavaScript/TypeScript into a single ecosystem.

How it works

XGo acts as a high-level language that can leverage different underlying Go compilers (such as the official Go compiler, LLGo, or TinyGo). It simplifies Go's expressions by introducing command-style code (e.g., using echo instead of fmt.Println), removing boilerplate like package main and func main, and introducing Python-like keyword arguments and simplified list/map literals. Through LLGo, it can directly import and call libraries from C/C++ and Python.

Who it’s for

  • Engineers who want a simpler, more concise language for development.
  • Students in STEM education learning engineering languages.
  • Data Scientists who need a common language to communicate and collaborate with engineers.

Highlights

  • Natural Language Style: Uses command-style syntax to reduce parentheses and boilerplate.
  • Multi-Language Integration: Ability to import and use C/C++, Python, and JavaScript/TypeScript libraries.
  • Go Compatibility: Fully compatible with Go, allowing Go and XGo code to coexist in the same package.
  • SDF (Specific Domain Friendliness): Uses "classfiles" to abstract domain knowledge for specific use cases like web frameworks (YAP), game engines (SPX), and shell scripting (GSH).

Related

  • Dispatch
  • Project
  • Project
  • Project
  • Project