Kaya is a compiled statically typed (ie, types are checked at compile time)
imperative programming language; unlike other such languages, however, types
are inferred rather than declared - there is no need for type declarations of
local variables. Kaya has "tagged union" data structures, a powerful feature
more commonly found in functional languages such as Ocaml and Haskell.
Kaya also has built-in abstractions for web application development, making
it easy to write a CGI program without paying too much attention to low level
details such as state management and form handling.