# Copyright (c) 2012, Limin Fu
# This document is released under the GNU Free Documentation License.

load help;

load help_dao_feature;
load help_dao_tutorial;
load help_dao_grammar;
load help_dao_type;
load help_dao_operator;
load help_dao_control;
load help_dao_routine;
load help_dao_class;
load help_dao_concurrent;
load help_dao_macro;
load help_dao_builtin;
load help_dao_module;

@[name]
dao
@[name]

@[title]
Dao Programming Language (Version 2.0)
@[title]

@[author]
Limin Fu
@[author]

@[license]
GNU Free Documentation License
@[license]

@[text]
Dao Programming Language

http://daovm.net


Dao is a lightweight and optionally typed programming language
with many interesting features. It includes features that can
make concurrent programming much simpler. It has well designed
programming interfaces for easy embedding and extending.


Main features:
@[list]
--Optional typing with type inference and static type checking;
--Object-Oriented Programming (OOP) with classes and interfaces;
--Code section methods as a better alternative to functional methods;
--Native support for concurrent programming;
--Concurrent garbage collection;
--Support typed coroutines and function decorators;
--Support closures, anonymous functions and classes;
--BNF-like syntax macro for defining customized syntax;
--Designed and implemented as a register-based virtual machine;
--Portable implementation using standard C;
--Simple C programming interfaces for easy embedding and extending;
--LLVM-based Just-In-Time (JIT) compiling;
--Clang-based tool for automatic wrapping of C/C++ libraries;
--Released under the Simplified BSD License.
@[list]

Please see @[node]dao.feature@[node] for a more complete list
of summarized features.

@[text]
