Working on the Sphinx docs.

I had to remove the tuples from the args specs, sphinx had kittens.

I see value both in the autodoc for library.py and the library examples
Jupyter notebook (converted to ReST format) so I'm including them both.

Calling the library module autodocs the "Function Reference".
This commit is contained in:
Simon Forman
2018-04-24 21:01:16 -07:00
parent 93b35593d4
commit 147641611d
11 changed files with 3281 additions and 69 deletions
@@ -12602,7 +12602,7 @@ primrec == [i] genrec
<div class="prompt input_prompt">In&nbsp;[&nbsp;]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span>
<div class=" highlight hl-ipython2"><pre><span></span>
</pre></div>
</div>
+6 -6
View File
@@ -12447,7 +12447,7 @@ div#notebook {
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="kn">from</span> <span class="nn">sympy</span> <span class="kn">import</span> <span class="n">floor</span><span class="p">,</span> <span class="n">lambdify</span><span class="p">,</span> <span class="n">solve</span><span class="p">,</span> <span class="n">symbols</span>
<span class="kn">from</span> <span class="nn">sympy</span> <span class="kn">import</span> <span class="n">init_printing</span>
<span class="n">init_printing</span><span class="p">()</span>
<span class="n">init_printing</span><span class="p">()</span>
</pre></div>
</div>
@@ -12600,7 +12600,7 @@ $$4 k \left(k + 1\right) + 2$$
<div class="prompt input_prompt">In&nbsp;[19]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="k">time</span> rank_of(23000000000000) # Compare runtime with rank_and_offset()!
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="n">time</span> <span class="n">rank_of</span><span class="p">(</span><span class="mi">23000000000000</span><span class="p">)</span> <span class="c1"># Compare runtime with rank_and_offset()!</span>
</pre></div>
</div>
@@ -12645,7 +12645,7 @@ $$2397916$$
<div class="prompt input_prompt">In&nbsp;[20]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="k">time</span> rank_and_offset(23000000000000)
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="n">time</span> <span class="n">rank_and_offset</span><span class="p">(</span><span class="mi">23000000000000</span><span class="p">)</span>
</pre></div>
</div>
@@ -12911,7 +12911,7 @@ $$\lfloor{\frac{1}{2} \sqrt{y - 1} - \frac{1}{2}}\rfloor + 1$$
<div class="prompt input_prompt">In&nbsp;[28]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="k">time</span> int(F(23000000000000)) # The clear winner.
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="n">time</span> <span class="nb">int</span><span class="p">(</span><span class="n">F</span><span class="p">(</span><span class="mi">23000000000000</span><span class="p">))</span> <span class="c1"># The clear winner.</span>
</pre></div>
</div>
@@ -12981,7 +12981,7 @@ $$2397916$$
<div class="prompt input_prompt">In&nbsp;[30]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="k">time</span> mrank_of(23000000000000)
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="n">time</span> <span class="n">mrank_of</span><span class="p">(</span><span class="mi">23000000000000</span><span class="p">)</span>
</pre></div>
</div>
@@ -13227,7 +13227,7 @@ $$4572225$$
<div class="prompt input_prompt">In&nbsp;[37]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="k">time</span> aoc20173(23000000000000000000000000) # Fast for large values.
<div class=" highlight hl-ipython2"><pre><span></span><span class="o">%</span><span class="n">time</span> <span class="n">aoc20173</span><span class="p">(</span><span class="mi">23000000000000000000000000</span><span class="p">)</span> <span class="c1"># Fast for large values.</span>
</pre></div>
</div>
+1 -1
View File
@@ -24,7 +24,7 @@ copyright = u'2018, Simon Forman'
author = u'Simon Forman'
# The short X.Y version
version = u''
version = u'0.1'
# The full version, including alpha/beta/rc tags
release = u'0.1.0'
+28 -5
View File
@@ -3,21 +3,44 @@
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Thun Documentation
==================
Thun |release| Documentation
============================
Thun is dialect of Joy written in Python.
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".
Quick Start
--------------------------------------------------
Install from PyPI in the usual way::
$ pip install Thun
To start the REPL::
$ python -m joy
Hey there!
.. toctree::
:maxdepth: 2
:caption: Contents:
joy
stack
parser
pretty
library
lib
.. automodule:: joy.joy
:members:
Indices and tables
+9
View File
@@ -0,0 +1,9 @@
Joy Interpreter
===============
.. automodule:: joy.joy
:members:
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -1,9 +1,9 @@
Functions, Combinators and Definitions
Function Reference
======================================
. . automodule:: joy.library
.. automodule:: joy.pribrary
:members: