the dao to programming, lisp meets prolog in python.
Project description
============================
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)
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)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
daot-0.7.2.zip
(60.2 kB
view hashes)
Built Distributions
daot-0.7.2.win32-py2.6.exe
(256.0 kB
view hashes)
daot-0.7.2-py2.6.egg
(145.8 kB
view hashes)