All Projects → pechersky → haskell-numpy-docs

pechersky / haskell-numpy-docs

Licence: BSD-3-Clause license
Examples of Haskell versions of Numpy usage

Programming Languages

haskell
3896 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to haskell-numpy-docs

sphinxcontrib-django
This is a sphinx extension which improves the documentation of Django apps.
Stars: ✭ 37 (+105.56%)
Mutual labels:  sphinx-doc
FAQ
Unofficial Fedora FAQ in russian
Stars: ✭ 86 (+377.78%)
Mutual labels:  sphinx-doc
panda3d-docs
Sphinx documentation for Panda3D
Stars: ✭ 37 (+105.56%)
Mutual labels:  sphinx-doc
Jupyter Book
Create beautiful, publication-quality books and documents from computational content.
Stars: ✭ 2,577 (+14216.67%)
Mutual labels:  sphinx-doc
Readthedocs.org
The source code that powers readthedocs.org
Stars: ✭ 6,802 (+37688.89%)
Mutual labels:  sphinx-doc
sphinx-theme
(Deprecated) Make Sphinx docs look like MDN
Stars: ✭ 27 (+50%)
Mutual labels:  sphinx-doc
docs
Jina V1 Official Documentation. For the latest one, please check out https://docs.jina.ai
Stars: ✭ 21 (+16.67%)
Mutual labels:  sphinx-doc
PythonTipsDS
Python Tips for Data Scientist
Stars: ✭ 23 (+27.78%)
Mutual labels:  sphinx-doc
sphobjinv
Toolkit for manipulation and inspection of Sphinx objects.inv files
Stars: ✭ 53 (+194.44%)
Mutual labels:  sphinx-doc
MapServer-documentation
Source repository for the MapServer documentation, for the live website. Please submit pull requests to the 'main' branch.
Stars: ✭ 29 (+61.11%)
Mutual labels:  sphinx-doc
sphinx-autorun
Sphinx extension to execute the code output it into a document.
Stars: ✭ 14 (-22.22%)
Mutual labels:  sphinx-doc
sphinx rtd dark mode
Adds a toggleable dark mode to the Read the Docs theme for Sphinx.
Stars: ✭ 29 (+61.11%)
Mutual labels:  sphinx-doc
tutorials-kr
🇰🇷파이토치에서 제공하는 튜토리얼의 한국어 번역을 위한 저장소입니다. (Translate PyTorch tutorials in Korean🇰🇷)
Stars: ✭ 271 (+1405.56%)
Mutual labels:  sphinx-doc
sphinx-server
Sphinx documentation Docker image with Python server and support for PlantUML and more.
Stars: ✭ 62 (+244.44%)
Mutual labels:  sphinx-doc
restbuilder
A Sphinx builder/writer to output reStructuredText (rst) files
Stars: ✭ 25 (+38.89%)
Mutual labels:  sphinx-doc
rabbitChat
A Chat-Server/Chat-System based on AMQP protocol(RabbitMQ) + AMQP Python Client(PIKA) + Websockets(SockJS) + Async Python Server(Tornado)
Stars: ✭ 53 (+194.44%)
Mutual labels:  sphinx-doc
gui-python-gtk
Repositório criado para documentar e centralizar conteúdos, dicas, tutoriais e exemplos de código sobre a construção de interfaces com a linguagem de programação Python (PyGObject) e o toolkit gráfico Gtk 4.
Stars: ✭ 85 (+372.22%)
Mutual labels:  sphinx-doc
haskell-vae
Learning about Haskell with Variational Autoencoders
Stars: ✭ 18 (+0%)
Mutual labels:  hmatrix

haskell-numpy-docs

This repo provides the docs with which one can compare how use Haskell (and associated libraries) in the same way one would use the Python numerical library numpy. A contribution of the DataHaskell project.

The actual docs

https://pechersky.github.io/haskell-numpy-docs/

Structure

The numpy docs are provided as a submodule, pointing to the numpy repo.

The examples are in the src directory, grouped by the docs page that they are associated with. Each docs page can have a different library provide examples. Each library should get its own hs file. For example, there is a src/quickstart/hmatrix.hs for the HMatrix version of the numpy quickstart docs.

The actual docs pages are built using Sphinx, a Python documentation generator. It uses an rst format. To write docs based on the examples you wrote, use the sphinx-tabs and the specially written comparetabs extensions. The docs rsts only require pointing to the parent example documents, the lines that each example should pull in, and the language of the example. For a good starting point, check out docs/quickstart.rst.

Developing

Select the library you want to test. Add it to the haskell-numpy-docs.cabal file. Run stack solver to prepare the dependencies. Run stack build to provide install the libraries.

There are some special things you might need to do to develop on Windows machines. Specifically, you need to provide a BLAS implementation for HMatrix to work. Check out stack.yaml for an example.

Testing

You can write the Haskell examples to be valid Haskell. This is verifiable using the doctest library. To check an examples file, run a command like stack exec doctest src/quickstart/hmatrix.hs, for example.

Building documentation

Make sure the proper Python dependencies are installed using pip install -r requirements.txt. To build the documentation, cd to the docs directory. Run make html.

For directions about how to push the docs, take a look at how to push docs.

Contributing

File a PR with a new library, or new examples, or more idiomatic Haskell code. File an issue for more in-depth discussion. Visit the DataHaskell channel and talk!

Advanced git stuff

Pushing docs

In a properly set up repo, following a make html, run:

cd _build/html
git commit -a -m 'new examples here'
git push origin gh-pages

This is based on a way to provide sphinx documentations to GitHub pages, given at https://gist.github.com/brantfaircloth/791759.

The simple explanation of how to set this up for you is that in the _build/html directory, you need to

cd docs
git clone [email protected]:pechersky/haskell-numpy-docs.git _build/html
cd _build/html
git checkout master
rm .git/index
git clean -fdx
git checkout gh-pages

This is because the first part of the gist was already done. Be careful to not push the docs to the master branch!


Yakov Pechersky, 2017

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].