Giter Club home page Giter Club logo

dao's Introduction

This is Dao 0.7.4
============================

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.

----------------------------
What's new in dao 0.7.4?
----------------------------

*Release date:  2011-11-10

* new in code:
  * quasiquote, unquote, unquote_slicing is implemented.
  * directly evaluate sexpression in solver
  * some builtins for define, set and get global, outer and local var
  * lisp style macro: expand and eval on UserMacro

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

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

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

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

-------------------------
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 old informations can be reached from <http://code.google.com/p/daot>.

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

pypi distribution and document: http://pypi.python.org/pypi/daot
 
the project's repository is on github <https://github.com/chaosim/dao>. 

dao groups on google: Group name: daot, Group home page: http://groups.google.com/group/daot, Group email address: [email protected]

some old information and related stuff can be reached at <http://code.google.com/p/daot>.

google+ pages for news on dao: https://plus.google.com/112050694070234685790

Come to visit us!

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

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

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

To report or search for bugs, please goto <https://github.com/chaosim/dao>, or email to [email protected]

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: [email protected])

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!

!!! 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 ([email protected]) and thanks a lot.

dao's People

Contributors

chaosim avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

dao's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.