Skip to content

thezaplang/zap

Zap Programming Language

Zap Logo

Status License Stars

TL;DR: Zap is something like Go with its pain points fixed: better error handling, real enums with pattern matching, practical generics, if-expressions, and full target support via LLVM.


Discord

What is Zap?

Zap is a modern, high-level systems programming language compiled to native code (LLVM backend), using Automatic Reference Counting (ARC) instead of a Garbage Collector (GC).

Zap is built for developers who want to write high-performance applications -servers, CLI tools, tooling, and embedded software quickly, safely, and without frustration.

Zap behaves very similarly to Go by design. It does not try to reinvent systems programming. Its goal is to solve the real, long-standing problems of Go.


What does Zap improve over Go?

Error handling

  • try / catch / throw

No more if err != nil everywhere.


Enums

  • real enums
  • exhaustive pattern matching (match, each)

Correctness enforced by the compiler.


Generics

  • full and static
  • comptime-inspired
  • simple, predictable, and powerful

If-expressions / ternary

x = if cond { a } else { b }

Less boilerplate, clearer intent.


Targets & optimization

  • LLVM backend
  • small binaries
  • fast cold starts
  • targets: x86, ARM, RISC-V, WebAssembly, embedded

Contributing

Zap is at an early stage feedback directly shapes the language.

You can help by:

  • opening issues
  • discussing language design
  • implementing features
  • improving diagnostics
  • writing documentation

Repository: https://github.com/thezaplang/zap


Zap

Go, without Go problems

About

The Zap Programing Language

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors