OSDN Git Service

Bump version to 0.4.0
[joypy/Thun.git] / docs / sphinx_docs / _build / html / index.html
1
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
5 <html xmlns="http://www.w3.org/1999/xhtml">
6   <head>
7     <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
8     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
9     <title>Thun 0.4.0 Documentation &#8212; Thun 0.4.0 documentation</title>
10     <link rel="stylesheet" href="_static/alabaster.css" type="text/css" />
11     <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
12     <script type="text/javascript" src="_static/documentation_options.js"></script>
13     <script type="text/javascript" src="_static/jquery.js"></script>
14     <script type="text/javascript" src="_static/underscore.js"></script>
15     <script type="text/javascript" src="_static/doctools.js"></script>
16     <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
17     <link rel="index" title="Index" href="genindex.html" />
18     <link rel="search" title="Search" href="search.html" />
19     <link rel="next" title="Thun: Joy in Python" href="notebooks/Intro.html" />
20    
21   <link rel="stylesheet" href="_static/custom.css" type="text/css" />
22   
23   
24   <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
25
26   </head><body>
27   
28
29     <div class="document">
30       <div class="documentwrapper">
31         <div class="bodywrapper">
32           <div class="body" role="main">
33             
34   <div class="section" id="thun-release-documentation">
35 <h1>Thun 0.4.0 Documentation<a class="headerlink" href="#thun-release-documentation" title="Permalink to this headline">¶</a></h1>
36 <p>Thun is dialect of Joy written in Python.</p>
37 <p><a class="reference external" href="https://en.wikipedia.org/wiki/Joy_(programming_language)">Joy</a> is a programming language created by Manfred von Thun that is easy to
38 use and understand and has many other nice properties.  This Python
39 package implements an interpreter for a dialect of Joy that attempts to
40 stay very close to the spirit of Joy but does not precisely match the
41 behaviour of the original version(s) written in C.  The main difference
42 between Thun and the originals, other than being written in Python, is
43 that it works by the “Continuation-Passing Style”.</p>
44 <p>Joy is:</p>
45 <ul class="simple">
46 <li><a class="reference external" href="https://en.wikipedia.org/wiki/Purely_functional_programming">Purely Functional</a></li>
47 <li><a class="reference external" href="https://en.wikipedia.org/wiki/Stack-oriented_programming_language">Stack-based</a></li>
48 <li><a class="reference external" href="https://en.wikipedia.org/wiki/Concatenative_programming_language">Concatinative</a> ( See also <a class="reference external" href="http://www.concatenative.org/wiki/view/Concatenative%20language">concatenative.org</a>)</li>
49 <li><a class="reference internal" href="notebooks/Categorical.html"><span class="doc">Categorical</span></a></li>
50 </ul>
51 <p>I hope that this package is useful in the sense that it provides an
52 additional joy interpreter (the binary in the archive from La Trobe seems
53 to run just fine on my modern Linux machine!)  But I also hope that you
54 can read and understand the Python code and play with the implementation
55 itself.</p>
56 <div class="section" id="quick-start">
57 <h2>Quick Start<a class="headerlink" href="#quick-start" title="Permalink to this headline">¶</a></h2>
58 <p>Install from <a class="reference external" href="https://pypi.org/project/Thun/">PyPI</a> in the usual way:</p>
59 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ pip install Thun
60 </pre></div>
61 </div>
62 <p>To start the REPL:</p>
63 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ python -m joy
64 </pre></div>
65 </div>
66 <p>Continue with <a class="reference internal" href="notebooks/Intro.html"><span class="doc">the introduction</span></a>.</p>
67 </div>
68 <div class="section" id="project-hosted-on-osdn">
69 <h2>Project Hosted on <a class="reference external" href="https://osdn.net/projects/joypy/">OSDN</a><a class="headerlink" href="#project-hosted-on-osdn" title="Permalink to this headline">¶</a></h2>
70 <ul class="simple">
71 <li><a class="reference external" href="https://osdn.net/projects/joypy/scm/hg/Joypy/tree/tip/">Source Repository</a> (Mercurial)</li>
72 <li><a class="reference external" href="https://osdn.net/projects/joypy/ticket/">Bug tracker</a></li>
73 <li><a class="reference external" href="https://osdn.net/projects/joypy/forums/">Forums</a></li>
74 <li><a class="reference external" href="https://osdn.net/projects/joypy/lists/">Mailing list</a></li>
75 </ul>
76 </div>
77 <div class="section" id="information-on-the-joy-language">
78 <h2>Information on the Joy language<a class="headerlink" href="#information-on-the-joy-language" title="Permalink to this headline">¶</a></h2>
79 <p>See <a class="reference external" href="https://en.wikipedia.org/wiki/Joy_(programming_language)">the Wikipedia article</a> and <a class="reference external" href="http://www.kevinalbrecht.com/code/joy-mirror/index.html">Kevin Albrecht’s mirror of Manfred von Thun’s original website for the Joy Programming Language</a> for more information on the Joy language.</p>
80 <p>The best source (no pun intended) for learning about Joy is the
81 information made available at the website of La Trobe University (see the
82 mirror link above) which contains source code for the
83 original C interpreter, Joy language source code for various functions,
84 and a great deal of fascinating material mostly written by Von Thun on
85 Joy and its deeper facets as well as how to program in it and several
86 interesting aspects.  It’s quite a treasure trove.</p>
87 </div>
88 <div class="section" id="documentation-on-thun-dialect">
89 <h2>Documentation on Thun Dialect<a class="headerlink" href="#documentation-on-thun-dialect" title="Permalink to this headline">¶</a></h2>
90 <p>The following is specific information for this dialect of Joy.</p>
91 <div class="toctree-wrapper compound">
92 <ul>
93 <li class="toctree-l1"><a class="reference internal" href="notebooks/Intro.html">Thun: Joy in Python</a><ul>
94 <li class="toctree-l2"><a class="reference internal" href="notebooks/Intro.html#read-eval-print-loop-repl">Read-Eval-Print Loop (REPL)</a></li>
95 <li class="toctree-l2"><a class="reference internal" href="notebooks/Intro.html#the-stack">The Stack</a></li>
96 <li class="toctree-l2"><a class="reference internal" href="notebooks/Intro.html#purely-functional-datastructures">Purely Functional Datastructures</a></li>
97 <li class="toctree-l2"><a class="reference internal" href="notebooks/Intro.html#the-joy-function">The <code class="docutils literal notranslate"><span class="pre">joy()</span></code> function</a></li>
98 <li class="toctree-l2"><a class="reference internal" href="notebooks/Intro.html#parser">Parser</a></li>
99 <li class="toctree-l2"><a class="reference internal" href="notebooks/Intro.html#library">Library</a></li>
100 </ul>
101 </li>
102 <li class="toctree-l1"><a class="reference internal" href="joy.html">Joy Interpreter</a><ul>
103 <li class="toctree-l2"><a class="reference internal" href="joy.html#module-joy.joy"><code class="docutils literal notranslate"><span class="pre">joy.joy</span></code></a></li>
104 </ul>
105 </li>
106 <li class="toctree-l1"><a class="reference internal" href="stack.html">Stack or Quote or Sequence or List…</a><ul>
107 <li class="toctree-l2"><a class="reference internal" href="stack.html#module-joy.utils.stack"><code class="docutils literal notranslate"><span class="pre">joy.utils.stack</span></code></a></li>
108 </ul>
109 </li>
110 <li class="toctree-l1"><a class="reference internal" href="parser.html">Parsing Text into Joy Expressions</a><ul>
111 <li class="toctree-l2"><a class="reference internal" href="parser.html#module-joy.parser"><code class="docutils literal notranslate"><span class="pre">joy.parser</span></code></a></li>
112 <li class="toctree-l2"><a class="reference internal" href="parser.html#parser-internals">Parser Internals</a></li>
113 </ul>
114 </li>
115 <li class="toctree-l1"><a class="reference internal" href="pretty.html">Tracing Joy Execution</a><ul>
116 <li class="toctree-l2"><a class="reference internal" href="pretty.html#module-joy.utils.pretty_print"><code class="docutils literal notranslate"><span class="pre">joy.utils.pretty_print</span></code></a></li>
117 </ul>
118 </li>
119 <li class="toctree-l1"><a class="reference internal" href="library.html">Function Reference</a><ul>
120 <li class="toctree-l2"><a class="reference internal" href="library.html#module-joy.library"><code class="docutils literal notranslate"><span class="pre">joy.library</span></code></a></li>
121 <li class="toctree-l2"><a class="reference internal" href="library.html#module-joy.utils.generated_library">Auto-generated Functions</a></li>
122 </ul>
123 </li>
124 <li class="toctree-l1"><a class="reference internal" href="lib.html">Functions Grouped by, er, Function with Examples</a><ul>
125 <li class="toctree-l2"><a class="reference internal" href="lib.html#stack-chatter">Stack Chatter</a></li>
126 <li class="toctree-l2"><a class="reference internal" href="lib.html#list-words">List words</a></li>
127 <li class="toctree-l2"><a class="reference internal" href="lib.html#math-words">Math words</a></li>
128 <li class="toctree-l2"><a class="reference internal" href="lib.html#logic-and-comparison">Logic and Comparison</a></li>
129 <li class="toctree-l2"><a class="reference internal" href="lib.html#miscellaneous">Miscellaneous</a></li>
130 <li class="toctree-l2"><a class="reference internal" href="lib.html#combinators">Combinators</a></li>
131 <li class="toctree-l2"><a class="reference internal" href="lib.html#void"><code class="docutils literal notranslate"><span class="pre">void</span></code></a></li>
132 </ul>
133 </li>
134 <li class="toctree-l1"><a class="reference internal" href="types.html">Type Inference of Joy Expressions</a><ul>
135 <li class="toctree-l2"><a class="reference internal" href="types.html#joy-utils-types"><code class="docutils literal notranslate"><span class="pre">joy.utils.types</span></code></a></li>
136 </ul>
137 </li>
138 <li class="toctree-l1"><a class="reference internal" href="notebooks/index.html">Essays about Programming in Joy</a><ul>
139 <li class="toctree-l2"><a class="reference internal" href="notebooks/Developing.html">Developing a Program in Joy</a></li>
140 <li class="toctree-l2"><a class="reference internal" href="notebooks/Quadratic.html">Quadratic formula</a></li>
141 <li class="toctree-l2"><a class="reference internal" href="notebooks/Replacing.html">Replacing Functions in the Dictionary</a></li>
142 <li class="toctree-l2"><a class="reference internal" href="notebooks/Recursion_Combinators.html">Recursion Combinators</a></li>
143 <li class="toctree-l2"><a class="reference internal" href="notebooks/Ordered_Binary_Trees.html">Treating Trees I: Ordered Binary Trees</a></li>
144 <li class="toctree-l2"><a class="reference internal" href="notebooks/Treestep.html">Treating Trees II: <code class="docutils literal notranslate"><span class="pre">treestep</span></code></a></li>
145 <li class="toctree-l2"><a class="reference internal" href="notebooks/Generator_Programs.html">Using <code class="docutils literal notranslate"><span class="pre">x</span></code> to Generate Values</a></li>
146 <li class="toctree-l2"><a class="reference internal" href="notebooks/Newton-Raphson.html">Newton’s method</a></li>
147 <li class="toctree-l2"><a class="reference internal" href="notebooks/Zipper.html">Traversing Datastructures with Zippers</a></li>
148 <li class="toctree-l2"><a class="reference internal" href="notebooks/Types.html">The Blissful Elegance of Typing Joy</a></li>
149 <li class="toctree-l2"><a class="reference internal" href="notebooks/TypeChecking.html">Type Checking</a></li>
150 <li class="toctree-l2"><a class="reference internal" href="notebooks/NoUpdates.html">No Updates</a></li>
151 <li class="toctree-l2"><a class="reference internal" href="notebooks/Categorical.html">Categorical Programming</a></li>
152 <li class="toctree-l2"><a class="reference internal" href="notebooks/The_Four_Operations.html">The Four Fundamental Operations of Definite Action</a></li>
153 <li class="toctree-l2"><a class="reference internal" href="notebooks/Derivatives_of_Regular_Expressions.html">∂RE</a></li>
154 </ul>
155 </li>
156 </ul>
157 </div>
158 </div>
159 </div>
160 <div class="section" id="indices-and-tables">
161 <h1>Indices and tables<a class="headerlink" href="#indices-and-tables" title="Permalink to this headline">¶</a></h1>
162 <ul class="simple">
163 <li><a class="reference internal" href="genindex.html"><span class="std std-ref">Index</span></a></li>
164 <li><a class="reference internal" href="py-modindex.html"><span class="std std-ref">Module Index</span></a></li>
165 <li><a class="reference internal" href="search.html"><span class="std std-ref">Search Page</span></a></li>
166 </ul>
167 </div>
168
169
170           </div>
171         </div>
172       </div>
173       <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
174         <div class="sphinxsidebarwrapper">
175   <h3><a href="#">Table Of Contents</a></h3>
176   <ul>
177 <li><a class="reference internal" href="#">Thun 0.4.0 Documentation</a><ul>
178 <li><a class="reference internal" href="#quick-start">Quick Start</a></li>
179 <li><a class="reference internal" href="#project-hosted-on-osdn">Project Hosted on OSDN</a></li>
180 <li><a class="reference internal" href="#information-on-the-joy-language">Information on the Joy language</a></li>
181 <li><a class="reference internal" href="#documentation-on-thun-dialect">Documentation on Thun Dialect</a></li>
182 </ul>
183 </li>
184 <li><a class="reference internal" href="#indices-and-tables">Indices and tables</a></li>
185 </ul>
186 <div class="relations">
187 <h3>Related Topics</h3>
188 <ul>
189   <li><a href="#">Documentation overview</a><ul>
190       <li>Next: <a href="notebooks/Intro.html" title="next chapter">Thun: Joy in Python</a></li>
191   </ul></li>
192 </ul>
193 </div>
194   <div role="note" aria-label="source link">
195     <h3>This Page</h3>
196     <ul class="this-page-menu">
197       <li><a href="_sources/index.rst.txt"
198             rel="nofollow">Show Source</a></li>
199     </ul>
200    </div>
201 <div id="searchbox" style="display: none" role="search">
202   <h3>Quick search</h3>
203     <div class="searchformwrapper">
204     <form class="search" action="search.html" method="get">
205       <input type="text" name="q" />
206       <input type="submit" value="Go" />
207       <input type="hidden" name="check_keywords" value="yes" />
208       <input type="hidden" name="area" value="default" />
209     </form>
210     </div>
211 </div>
212 <script type="text/javascript">$('#searchbox').show(0);</script>
213         </div>
214       </div>
215       <div class="clearer"></div>
216     </div>
217     <div class="footer" role="contentinfo">
218 <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">
219 <img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png" />
220 </a>
221 <br />
222 <span xmlns:dct="http://purl.org/dc/terms/" property="dct:title">Thun Documentation</span> by <a xmlns:cc="http://creativecommons.org/ns#" href="https://joypy.osdn.io/" property="cc:attributionName" rel="cc:attributionURL">Simon Forman</a> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License</a>.<br />Based on a work at <a xmlns:dct="http://purl.org/dc/terms/" href="https://osdn.net/projects/joypy/" rel="dct:source">https://osdn.net/projects/joypy/</a>.
223       Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.7.3.
224     </div>
225
226   </body>
227 </html>