Why another language?

Why we created Evolang and how it differs from existing solutions.

Configuration Landscape

YAML, PKL, and HCL are all remarkable configuration languages with well-deserved roles in today's ecosystem. YAML's human-readable syntax has become the backbone of tools like Kubernetes and CI pipelines. HCL brings powerful expressiveness to infrastructure-as-code, and Apple's PKL introduces elegant language constructs for modeling complex configurations. Each excels in its intended domain.

Yet with this excellence come trade-offs. YAML's whitespace sensitivity creates subtle, hard-to-spot bugs. HCL's expressiveness, while powerful, can result in deeply nested and dynamic configurations that become increasingly difficult to reason about as complexity grows. These aren't flaws but consequences of design choices that prioritize flexibility or readability—but at the cost of clarity and reliability.

Clarity First

Evolang addresses a specific gap we've experienced firsthand: the need for a language that puts clarity and reliability first. We made deliberate, opinionated choices after watching organizations struggle with the same configuration errors repeatedly. While building cloud platforms at scale, we learned that flexibility without guardrails inevitably leads to configuration debt.

Guardrails By Design

Evolang is purpose-built for cloud-native infrastructure management, where even minor mistakes—like misplaced whitespace or overly complex expressions—can cause production incidents. Our language makes common patterns dead simple and dangerous patterns impossible. We've rejected numerous "cool" features that would have increased expressive power but reduced clarity—because in production systems, boring configuration is good configuration.

Domain Specialization

Evolang isn't trying to replace general-purpose configuration languages like JSON and YAML—it's focused on solving a different class of problems. It was built specifically for cloud-native infrastructure management, where clarity and reliability are non-negotiable.

Reliability At Scale

In complex environments, subtle mistakes can lead to outages, drift, or long nights debugging unexpected behavior. Evolang confronts these challenges head-on with consistent syntax, opinionated patterns, and guardrails that guide users toward correctness by default. It helps teams write infrastructure configuration that is clear to read, easy to reason about, and difficult to get wrong—even as systems grow increasingly complex.

Community Ownership

We believe languages like Evolang—should be freely available and community-driven. Too many DSLs have become vendor-controlled or commercially restricted, limiting innovation and adoption. Evolang is committed to true open source principles, forever. It's backed by a vendor-neutral foundation to ensure it remains a public good that evolves based on community needs rather than commercial interests. Infrastructure languages are critical public infrastructure themselves—they should belong to everyone.

Learn more about our Open Source Philosophy and Mission here.