Skip to main content
============================
This is Dao version 0.7.2
============================

What would happen when lisp meets prolog in python?

Dinpy arises!

Dao is the new generation programming system implemented by a functional logic solver,
unifying code with data, grammar with program, logic with functional, compiling with running.

------------------
How to use Dao?
------------------

!!! This readme in ReStructureText format does not works in pypi.
What's wrong with this(see dao\readme and dao\setup.py)?
I don't find the reason even after reading pypi tutorial, google and trying a lot ways.
If any one know please show me how to fix it (simeon.chaos@gmail.com) and thanks a lot.

See the "get start" in the <http://code.google.com/p/daot/w/list> to get started with dao and dinpy.
See <http://packages.python.org/daot> for document about dao and dinpy.
See the tests, and you'll get some information about the interface and user cases.

Have a look at running Dinpy in interactive mode in the python shell below::

>>> from dao.dinpy import *

>>> i<<0
0
>>> quote(i/i+i*1)
i/i+i*1
>>> let(i<<1).do[prin(i)]
1
>>> loop(3)[ prin(i), ++i ]
0 1 2
>>> loop [ prin(i), --i]. until(i==0)
3 2 1
>>> when(i!=0).loop[ prin(i), --i]
3 2 1
>>> loop [ prin(i), ++i, iff(i==3) .do[exit] ]
0 1 2
>>> each(i)[0:3].loop[prin(i)]
0 1 2
>>> i << 0
0
>>> loop[ println('outer loop'), loop[ prin('inner loop: '), println(i), ++i, iff(i==3).do[ exit*2 >> 'exit from inner' ] ] ]
outer loop
inner loop: 0
inner loop: 1
inner loop: 2
'exit from inner'
>>> fun.f1(x) == [x+x]
f1
>>> f1(2)
4
>>> letr (f2 << fun(x)[ iff(x<1).do[x].els[f2(x-1)]]) .do [f2(3)]
0

----------------------------
What's new in this release?
----------------------------

* new in code:
* refactor findall, call, once
* fix a bug that prevent some backtracking in optional
* fix the bug caused by getvalue/setvalue.
the bug masks the internal generated variable for function argumnet when return and causes error in some situations.

* chinese document is almost finished:
* new chapter: function, macro
* more about logic command in document(zh)

See the file "news.txt" for what's new in all releases.

-------------------------
Download and install
-------------------------

You need python 2.6 or higher version to install and run dao. Dao is not tested with python 3.x.

You can download and install dao from pypi with these method:

* find the place of daot from pypi, download the tarball of daot from <http://code.google.com/p/daot>,unextract it to a single folder, enter the folder in the shell and execute the command::

python setup.py install

* install by easy_install through the internet directly, with the shell command::

easy_install dao

* install by easy_install through the internet directly, with the shell command::

pip install dao

---------------
Documentation
---------------

See <http://packages.python.org/daot> for document about dao and dinpy.

See <https://github.com/chaosim/dao/wiki> for wiki about dao and dinpy.

Some informations can be reached from <http://code.google.com/p/daot>.

---------
Testing
---------

dao use the nose test framework, the code in dao is tested with many tests.

-------------
Web sites
-------------

New dao releases, documents and related stuffs are published at
<http://code.google.com/p/daot>.

the project's repository is on github <https://github.com/chaosim/dao>.

Come to visit us!

------------
Bug reports
------------

To report or search for bugs, please goto <https://github.com/chaosim/dao>, or email to simeon.chaos@gmail.com

The source repository is on <https://github.com/chaosim/dao>.

-----------------
Platform notes
-----------------

Dao is developed and tested on Windows XP, Python 2.6.6.

--------------------
License information
---------------------

copyright (c) 2011-2013 Caoxingming(Simeon Chaos, email: simeon.chaos@gmail.com)

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

This software is released under GNU General Public License version 3.
see license.txt

See the file "license.txt" for information on the history of this
software, terms & conditions for usage, and a DISCLAIMER OF ALL
WARRANTIES.

This dao distribution contains GNU General Public Licensed (GPLed) code.

All trademarks referenced herein are property of their respective holders.

That's all, folks!

Your Sincerely
Caoxingming(simeon.chaos@gmail.com)

Release files for daot 0.7.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for daot 0.7.2
File Size Uploaded
daot-0.7.2.zip 60.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for daot 0.7.2
File Interpreter ABI Platform
daot-0.7.2.win32-py2.6.exe Details
daot-0.7.2-py2.6.egg Legacy Egg format - - Details

Total release size: 462.0 kB

Release files / daot-0.7.2.zip

Download URL daot-0.7.2.zip
Size 60.2 kB
Tags Source
SHA-256 checksum
How to use checksums
fbdc38b842893b69bec7c6043e278782f8a1bf186a293cf3c6f399ea28a7cd5b
BLAKE2b-256 checksum
How to use checksums
ee41ce687f7204a8b70757f3dc8946abf7389777d6816b52a81de59c80be0bd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / daot-0.7.2.win32-py2.6.exe

Download URL daot-0.7.2.win32-py2.6.exe
Size 256.0 kB
Tags Source
SHA-256 checksum
How to use checksums
761fa374e9e44dedabba7c416705bbb477bb649284b1bb14d21ee03d54b2bff4
BLAKE2b-256 checksum
How to use checksums
31e8a150b8b5e50045131fac6045b587cf19675a6754d12fe3cb57c30449ce2d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / daot-0.7.2-py2.6.egg

Download URL daot-0.7.2-py2.6.egg
Size 145.8 kB
Tags Egg
SHA-256 checksum
How to use checksums
2b90a76fcd622816529bf6d3eafbca51d576d80cf370f38fba53a4b3d9532728
BLAKE2b-256 checksum
How to use checksums
90144c2b8534f0fdd16aaccd6ce7f6e2b60ab5dddffa838a2fb43f571f9ad9dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

0.7.4

3 release files

0.7.3

3 release files

This release

0.7.2 This release

3 release files

0.7.1

3 release files

0.7.0

0.6.2

0.6.1

0.5

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page