111 lines
3.5 KiB
ReStructuredText
111 lines
3.5 KiB
ReStructuredText
.. Thun documentation master file, created by
|
|
sphinx-quickstart on Sun Apr 22 15:19:55 2018.
|
|
You can adapt this file completely to your liking, but it should at least
|
|
contain the root `toctree` directive.
|
|
|
|
Thun |release| Documentation
|
|
============================
|
|
|
|
Thun is dialect of Joy written in Python 2.
|
|
|
|
`Joy`_ is a programming language created by Manfred von Thun that is easy to
|
|
use and understand and has many other nice properties. This Python
|
|
package implements an interpreter for a dialect of Joy that attempts to
|
|
stay very close to the spirit of Joy but does not precisely match the
|
|
behaviour of the original version(s) written in C. The main difference
|
|
between Thun and the originals, other than being written in Python, is
|
|
that it works by the "Continuation-Passing Style".
|
|
|
|
Joy is:
|
|
|
|
* `Purely Functional <https://en.wikipedia.org/wiki/Purely_functional_programming>`__
|
|
* `Stack-based <https://en.wikipedia.org/wiki/Stack-oriented_programming_language>`__
|
|
* `Concatinative`_ ( See also `concatenative.org <http://www.concatenative.org/wiki/view/Concatenative%20language>`__)
|
|
* :doc:`Categorical <notebooks/Categorical>`
|
|
|
|
I hope that this package is useful in the sense that it provides an
|
|
additional joy interpreter (the binary in the archive from La Trobe seems
|
|
to run just fine on my modern Linux machine!) But I also hope that you
|
|
can read and understand the Python code and play with the implementation
|
|
itself.
|
|
|
|
.. _Joy: https://en.wikipedia.org/wiki/Joy_(programming_language)
|
|
|
|
.. _Concatinative: https://en.wikipedia.org/wiki/Concatenative_programming_language
|
|
|
|
|
|
Quick Start
|
|
--------------------------------------------------
|
|
|
|
Install from `PyPI`_ in the usual way::
|
|
|
|
$ pip install Thun
|
|
|
|
To start the REPL::
|
|
|
|
$ python -m joy
|
|
|
|
Continue with :doc:`the introduction <notebooks/Intro>`.
|
|
|
|
.. _PyPI: https://pypi.org/project/Thun/
|
|
|
|
|
|
Project Hosted on `OSDN`_
|
|
-------------------------
|
|
|
|
* `Source Repository`_ (Mercurial)
|
|
* `Bug tracker`_
|
|
* `Forums`_
|
|
* `Mailing list`_
|
|
|
|
.. _Bug tracker: https://osdn.net/projects/joypy/ticket/
|
|
.. _Forums: https://osdn.net/projects/joypy/forums/
|
|
.. _Mailing list: https://osdn.net/projects/joypy/lists/
|
|
.. _OSDN: https://osdn.net/projects/joypy/
|
|
.. _Source Repository: https://osdn.net/projects/joypy/scm/hg/Joypy/tree/tip/
|
|
|
|
|
|
Information on the Joy language
|
|
-------------------------------
|
|
|
|
See `the Wikipedia article`_ and `Kevin Albrecht's mirror of Manfred von Thun's original website for the Joy Programming Language`_ for more information on the Joy language.
|
|
|
|
The best source (no pun intended) for learning about Joy is the
|
|
information made available at the website of La Trobe University (see the
|
|
mirror link above) which contains source code for the
|
|
original C interpreter, Joy language source code for various functions,
|
|
and a great deal of fascinating material mostly written by Von Thun on
|
|
Joy and its deeper facets as well as how to program in it and several
|
|
interesting aspects. It's quite a treasure trove.
|
|
|
|
.. _the Wikipedia article: https://en.wikipedia.org/wiki/Joy_(programming_language)
|
|
|
|
.. _Kevin Albrecht's mirror of Manfred von Thun's original website for the Joy Programming Language: http://www.kevinalbrecht.com/code/joy-mirror/index.html
|
|
|
|
|
|
Documentation on Thun Dialect
|
|
-----------------------------
|
|
|
|
The following is specific information for this dialect of Joy.
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
notebooks/Intro
|
|
joy
|
|
stack
|
|
parser
|
|
pretty
|
|
library
|
|
lib
|
|
notebooks/index
|
|
|
|
|
|
|
|
Indices and tables
|
|
==================
|
|
|
|
* :ref:`genindex`
|
|
* :ref:`modindex`
|
|
* :ref:`search`
|