Cω is a strongly typed, data oriented programming language that bridges the gap between between semi-structured hierarchical data (XML), relational data (SQL), and the .NET Common Type System (CTS). In Cω, the seemingly different worlds of XML, SQL and CTS are bridged and connected through generalization, not specialization.
Besides data integration, Cω extends the C# programming language with new asynchronous concurrency abstractions, based on the join calculus. The language presents a simple and powerful model of concurrency which is applicable both to multithreaded applications running on a single machine and to the orchestration of asynchronous, event-based applications communicating over a wide area network.
In the Cω Documentation
- Cω Overview
- Start here: The motivation behind Cω and a tour of the main features of the language.
- Cω Tutorials
- Tutorials to help new Cω programmers learn the key concepts of the language.
- Cω Language Specification
- The current formal specification of the Cω language.
- Tools Reference
- Provides reference topics discussing the Cω compiler (cwc.exe) and other tools provided for use with Cω.
- Sample source code showing how to write applications for the .NET Framework using Cω .
Note Cω is an evolving language and as such, is subject to change. While the semantic concepts underlying Cω are stable, the syntax and other specifics of the Cω language could change in the future. Additionally, the current Cω compiler provides an incomplete implementation of details or behavior that might be described in this documentation.
- Visual Studio .NET
- Links you to major starting points in the Visual Studio documentation.
- Windows Forms
- Provides links to topics about the technologies and tools for creating Windows applications.
- Web Forms
- Provides links to topics about the technologies and tools for creating the browser-based user interface for ASP.NET applications.
- Developing Components
- Introduces .NET Framework programming concepts that are especially relevant to component programming.
- Building Applications
- Provides instructive overviews and detailed, step-by-step procedures for creating applications in the .NET Framework.
- Programming with the .NET Framework
- Explains common programming tasks that apply to a range of .NET Framework applications. Topics include accessing data, extending metadata, handling and throwing exceptions, processing transactions, and securing applications.