Getting started

Raven documentation

Raven is a pragmatic, typed application language for .NET that makes functional composition, algebraic modeling, and object-oriented design complementary parts of one toolset, with direct access to the .NET runtime and ecosystem.

Raven is under active development. These pages describe the compiler as it works today and identify areas whose design is still changing.

Learn Raven

Language and tooling

  • The language documentation organizes syntax, features, and common language rules by topic.
  • The language feature guides explain everyday Raven constructs through focused examples.
  • The language reference documents each feature in depth, including syntax, detailed behavior, and interoperability rules.
  • The tooling documentation covers projects, compiler commands, diagnostics, analyzers, distribution, and editor support.

Documentation status

Tutorials and reference pages describe implemented behavior unless they explicitly say otherwise. Compiler implementation notes, investigations, and language proposals remain in the source repository, but are intentionally not part of this user documentation.

Raven's official target is currently .NET. neoCLR is a related experimental platform exploring its own runtime, metadata and native compilation for Raven. Integration is under development and does not imply that .NET libraries or every Raven feature work on neoCLR. Its project website tracks that work separately from Raven's .NET release and documentation.