Rhombus Programming Language 1.1 Released: A Modern Syntax Exploration Built on Racket

Rhombus 1.1 brings modern infix syntax to Racket's powerful macro system and metaprogramming platform.
Rhombus 1.1 has been released, advancing this Racket-based programming language that combines a powerful Lisp-family macro system with modern infix syntax. Using its innovative Shrubbery notation, Rhombus bridges the gap between S-expression power and mainstream readability, targeting developers who need extreme extensibility and DSL creation capabilities.
Rhombus 1.1 Officially Released
Rhombus, the programming language, has officially released version 1.1, drawing attention from developers on Hacker News. As an emerging programming language built on the Racket platform, each iteration of Rhombus reflects cutting-edge explorations in modern programming language design.
Rhombus inherits Racket's powerful macro system and metaprogramming capabilities while striving to provide a more friendly, modern syntax experience. The 1.1 release marks an important step forward in stability and feature completeness.

What Is the Rhombus Programming Language
For developers unfamiliar with this language, Rhombus is worth a closer look. Born within the Racket ecosystem, it represents the core outcome of the Racket team's exploration of "next-generation Racket syntax."
Racket itself is known for its Lisp-family S-expression syntax—powerful and flexible, but presenting a steep learning curve for developers accustomed to conventional syntax. Rhombus was designed to address this problem: it retains Racket's powerful underlying compiler infrastructure and macro system while providing infix syntax on the surface, making code more intuitive and readable.
The Racket Platform and Lisp Family Background
To understand Rhombus's positioning, you first need to understand its foundation. Racket is a programming language derived from Scheme, which itself is a dialect of Lisp. The Lisp family of languages dates back to 1958, making it one of the oldest high-level programming language families. It's renowned for its distinctive S-expressions (using nested parentheses to represent program structure, such as (+ 1 2)) and the "code is data" philosophy of homoiconicity. Racket was originally named PLT Scheme before being renamed in 2010, positioning itself as "a programming language for programming languages"—a platform specifically designed for creating and researching new programming languages. Racket provides an extremely comprehensive language-building toolchain, including a module system, type system extensions, and an integrated development environment (DrRacket), and is widely used in computer science education and programming language research.
The Difference Between S-Expressions and Infix Syntax
S-expressions (Symbolic Expressions) are the hallmark syntax of the Lisp language family, where all operations are expressed in prefix form—addition is written as (+ 1 2) rather than 1 + 2, and function calls as (function-name arg1 arg2). This uniform prefix notation makes macro system implementation extremely elegant—since code itself is a list data structure, programs can easily manipulate other programs. However, for developers accustomed to C/Java/Python and their use of infix operators (like a + b) and curly braces/indentation to organize code, S-expressions with their heavily nested parentheses feel unfamiliar and difficult to read quickly. Infix syntax places operators between operands following mathematical conventions, combined with precedence rules, making it closer to natural human thinking. Rhombus's core challenge is: how to adopt infix syntax without losing the macro system advantages that S-expressions provide.
This design approach embodies the classic tension in language design between "power and readability."
Rhombus's Shrubbery Notation
Rhombus employs an innovative notation called "Shrubbery" as its syntactic foundation—the key technical solution to the challenge described above. Shrubbery notation combines indentation sensitivity (similar to Python) with explicit grouping (using colons and curly braces), forming a syntax that maintains the structural properties needed by the macro system while remaining human-friendly. Unlike traditional S-expressions, Shrubbery allows infix operators, method call chaining, and other modern syntactic elements, while maintaining enough regularity at the lower level for macros to reliably parse and transform code. The design of this notation went through years of discussion within the Racket community and multiple rounds of RFCs (Requests for Comments), reflecting a community-consensus-driven model of language evolution.
The Core Significance of the Rhombus 1.1 Update
The version progression from 0.x to 1.x to 1.1 typically signals that a language is transitioning from an experimental stage toward mature stability. The 1.x version series represents relative stability in APIs and syntax, giving developers more confidence to build real projects on it.
Semantic Versioning and Language Maturity
The software industry widely adopts the Semantic Versioning (SemVer) specification to communicate the meaning of version changes. The format is MAJOR.MINOR.PATCH: a major version change implies backward-incompatible API changes; a minor version change indicates new features while maintaining backward compatibility; a patch change includes only bug fixes. For programming languages, the 1.0 release typically carries milestone significance—it signals to the community that the language's core syntax and semantics have stabilized, and developers can build production code without worrying about frequent breaking changes. The transition from 1.0 to 1.1 demonstrates continuous improvement on a stable baseline, which is crucial for building developer trust.
As a minor version update, 1.1 typically includes several categories of improvements:
- Feature enhancements: Introducing new capabilities while maintaining backward compatibility
- Performance optimizations: Improving compilation speed or runtime efficiency
- Bug fixes: Resolving issues discovered in the previous version
- Toolchain improvements: Better documentation, error messages, and developer experience
For a young programming language, a consistent release cadence is an important signal of community activity and project health.
Modern Programming Language Design Trends
Rhombus's exploration reflects several important trends in current programming language design. More and more languages are seeking the optimal balance between "expressiveness" and "readability."
The Value of Metaprogramming and Macro Systems
Rhombus's most core advantage lies in its macro system inherited from Racket. The macro system allows developers to extend the language itself and create domain-specific languages (DSLs), which provides tremendous value when handling complex business logic or specific problem domains.
The macro system is one of the most revolutionary features of the Lisp language family. Unlike C's simple text-substitution macros, Racket/Rhombus macros are "hygienic macros" that transform abstract syntax trees (ASTs) at compile time while automatically handling variable scope conflicts. This means developers can define new syntactic constructs that look like built-in language keywords, and the compiler will expand them into underlying code during compilation. For example, you could use macros to implement an entirely new pattern-matching syntax, an async/await framework, or even a complete type system—features that in other languages require waiting for language designers to add, but in Racket/Rhombus developers can implement themselves. Domain-specific languages (DSLs) are the most typical use case for macro systems: designing specialized syntax for specific problem domains (such as database queries, hardware description, or financial modeling) so that domain experts can express their intent in the most natural way.
Compared to the limited metaprogramming capabilities of many mainstream languages, Rhombus offers nearly unlimited language customizability. This is particularly important for scenarios requiring high abstraction—such as compiler development, educational tools, and protocol implementation.
The Modern Pursuit of Syntax Readability
On the other hand, Rhombus abandons pure S-expressions in favor of syntax structures more aligned with mainstream conventions. This decision reflects language designers' emphasis on developer experience—no matter how powerful the capabilities, if the learning cost is too high, widespread adoption becomes difficult.
This "powerful core, friendly surface" design philosophy is also seen in successful cases like Kotlin for the JVM and Swift for the Apple ecosystem. Kotlin retains the full power of the JVM and Java interoperability while providing more concise and safe syntax; Swift builds a modern type system and syntactic sugar on top of the Objective-C runtime. Rhombus follows the same path—building a more approachable developer interface on top of Racket's mature language infrastructure.
Rhombus Community Development and Prospects
This release gaining attention and discussion on Hacker News represents meaningful sustained exposure for a highly specialized programming language, reflecting interest from the core technical community.
Programming language success is never achieved overnight. From Rust and Go to Zig, successful languages have all undergone lengthy community cultivation and iterative refinement. Rhombus is still in its early development stage, and its future will depend on several key factors:
- Ecosystem development: The richness of libraries, frameworks, and tools
- Documentation and learning resources: Lowering the barrier to entry for new users
- Real-world use cases: Proving its value in actual projects
- Community size: Continuously attracting developer participation and contributions
The Competitive Landscape of Programming Language Ecosystems
The current programming language landscape presents a highly diverse competitive picture. In systems programming, Rust provides garbage-collection-free memory safety through its ownership model; in general-purpose programming, Go excels with simplicity and efficient concurrency; Zig pursues predictable performance and seamless C interoperability. In functional programming and language research, Haskell, OCaml, Elixir, and others each have their followings. Rhombus occupies a rather unique niche—it doesn't directly compete in the general-purpose programming market, but rather explores the specialized direction of "extensible languages," targeting developers and academics who need extremely high abstraction capabilities, need to build DSLs, or are engaged in programming language education and research. This precise positioning is both its distinguishing feature and a factor that means it may not pursue massive user scale, but rather produce profound impact in specific domains.
Conclusion
The release of Rhombus 1.1 is another milestone in this programming language's ongoing evolution. It represents a serious exploration of modern programming language syntax and developer experience built upon Racket's powerful foundation. For developers interested in programming language design, metaprogramming, and Lisp-family languages, Rhombus is a project worth following.
While it may not become the next mainstream general-purpose language, its explorations and practices in language design contribute valuable thinking and experience to the entire programming language community. Rhombus demonstrates a possibility: that programming languages can have a modern, developer-friendly syntactic appearance while retaining ultimate extensibility. This practice itself, regardless of Rhombus's eventual user scale, will inspire future language design.
Related articles

Chain of Thought Isn't Just for AI: How Humans Can Use CoT to Improve Thinking Quality
Chain of Thought isn't just a prompt trick for large models. Starting from a Hacker News discussion, this article analyzes why CoT works for human thinking too, breaks down actionable ways to transfer it, and highlights the key differences between human CoT and machine CoT.
Cloudflare Teams Up with OpenAI: Closi…
Cloudflare Teams Up with OpenAI: Closing the Loop from Vulnerability Discovery to Defense with AI
Cloudflare uses OpenAI Daybreak to investigate security vulnerabilities and generate reviewable remediation plans, while developers use Codex to boost coding efficiency and quality.

Orca Multi-Agent Orchestration in Practice: A Guide to Parallel Collaboration with Claude and Codex
Orca is Stable AI's free open-source agent workbench supporting 34 agents like Claude Code and Codex in parallel. Learn its Git worktree isolation, multi-model orchestration, and mobile management.