Koka is a strongly typed functional-style language with effect types and handlers. The core of Koka consists of a small set of well-studied language features, like first-class functions, a polymorphic type- and effect system, algebraic data types, and effect handlers. Each of these is composable and avoid the addition of “special” extensions by being as general as possible. Koka tracks the (side) effects of every function in its type, where pure and effectful computations are distinguished. The precise effect typing gives Koka rock-solid semantics backed by well-studied category theory, which makes Koka particularly easy to reason about for both humans and compilers. Effect handlers let you define advanced control abstractions, like exceptions, async/await, or probabilistic programs, as a user library in a typed and composable way. Perceus is an advanced compilation method for reference counting.

Features

  • Install Koka and compile your first programs
  • The core of Koka consists of a small set of well-studied language features
  • Koka is a strongly typed functional-style language with effect types and handlers
  • Language compiler and interpreter
  • Perceus is an advanced compilation method for reference counting
  • Koka tracks the (side) effects of every function in its type

Project Samples

Project Activity

See All Activity >

Categories

Compilers

License

MIT License

Follow koka

koka Web Site

Other Useful Business Software
Auth0 for AI Agents now in GA Icon
Auth0 for AI Agents now in GA

Ready to implement AI with confidence (without sacrificing security)?

Connect your AI agents to apps and data more securely, give users control over the actions AI agents can perform and the data they can access, and enable human confirmation for critical agent actions.
Start building today
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of koka!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Haskell

Related Categories

Haskell Compilers

Registered

2023-03-24