Clay Programming Language

Why Clay?
Clay is concise.

If you’ve written generic programs with C++ templates,
you know how verbose it is. This is because type names are longer in generic code.
Clay solves this problem elegantly by providing whole program type propagation.
Generic programming, when combined with whole program type propagation lets you write
high-level code rivaling scripting languages in conciseness.

Clay is fast.

Efficient type-specialized code is generated during compilation.
This type-specialized code is low-level and is equivalent to C in performance.
Clay uses LLVM to optimize the generated low-level code.

Clay is a systems programming language.

Clay has the same memory footprint and runtime overhead as C.
It is suitable for writing garbage collectors, embedded systems,
database servers, games etc.