This is the first beta release after Dao has reach feature-complete status. In this version, Dao has included many new features and many significant improvements since Dao-1.1 released in 2009.
The most important new features include: (A) code section/block methods as an alternative to functional methods (similar to Ruby code block method); (B) concurrent programming features such as parallelized code section methods, asynchronous class and communication channels (similar to Go channels); (C) bytecode format and single file deployment; (D) deferred code block and exception handling by defer-recover (similar to exception handling in Go with some improvements); (E) abstract interfaces; (F) Enum symbol types (combination of C++ enum and Ruby symbol).... read more
Dao is a simple yet powerful object-oriented programming language with many advanced features including, soft (or optional) typing, BNF-like macro system, regular expression, multi-dimensional numeric array, closure, coroutine, asynchronous function call for concurrent programming etc. Dao provides a rich set of standard data types, methods and libraries. Dao is implemented as a light and efficient virtual machine with very transparent C programming interfaces, which make it easy to extend Dao with C/C++ or embed Dao into C/C++ programs. ... read more
Dao is a simple yet powerful object-oriented programming language with many advanced features including, soft (or optional) typing, BNF-like macro system, regular expression, multi-dimensional numeric array, closure, coroutine, asynchronous function call for concurrent programming etc. Dao provides a rich set of standard data types, methods and libraries. Dao is implemented as a light and efficient virtual machine with very transparent C programming interfaces, which make it easy to extend Dao with C/C++ or embed Dao into C/C++ programs.... read more
Hi,
I am please to announce a preview release of Dao (1.0). Dao is a simple yet powerful object-oriented programming language featured by, optional typing, BNF-like macro system, regular expression, multidimensional numeric array, asynchronous function call for concurrent programming etc.
Since the last beta release (2006 november), a number of new features have been added to the language with some significant improvements on the implementation. Here I will just list some of them:... read more
Hello,
After a few months' effort, I have finished the implementation of Dao Virtual Machine(DVM), and released it as 1.0-beta. The DVM is implemented as a very efficient virtual register machine. This version has implemented all the features I have planned. Most importantly, the implementation has been switched from C++ to standard C. As a consequence, the binary code of DVM is much smaller than before (as executable 250KB, as dynamic linking library 300KB, linux/gcc4). The efficiency has also been improved as well. The structure of DVM has been changed slightly, such that the embedding and extending of DVM becomes more convinient. In fact, now the mechanism to call internal functions is exactly the same as the mechanism to call extended functions. To allow DVM being more freely used, GLPL (GNU Lesser General Public Licence) has been adopted since this release. The DVM can be compiled and run in both windows and linux, but so far, it is tested mainly under linux. As before, the documentation of Dao is not well prepared yet; and there are only a few extended modules available for using. These two things will be the prioritized work in the near future.... read more
This is the first release after the Dao interpreter being re-designed and re-implemented as a virtual register machine since the beginning of this year. There have been many great improvements on both the language and the efficiency of the virtual machine. 10-20 times speedup has been observed, and now its efficiency should surpass that of many other scripting languages. Some important language features have been added, such as switch-case control, for-in-do control, setting function parameter types and default values, passing parameters by name, and function overloading by parameter types; OOP in Dao is also greatly improved; reflection methods are newly supported. In one word, the release represents a milestone in the development of Dao.... read more
This is just to let you know that the lastest version Dao language is released. This Dao was previously called Tao, and now is changed to Dao to avoid confusion with another TAO langauge. There are a number of new features implemented in this version, of which the most important one is the supporting for multi-threaded programming. A new concurrent garbage collector is also implemented to for the multi-threaded interpreter. Now unicode is also supported for string manipulation and regular expression (regex) matching etc. The algorithm for regex matching is enhanced with fixing of a few bugs which prevent finding the most reasonable matching in some case, and allowing reverse matching from the end of string. The interface for creating Dao plugin in C++ is further simplified and matured. Of course, many bugs are also fixed. For more information,
please visite: http://www.xdao.org, or, http://sourceforge.net/projects/daoscript.... read more