milewski-ctfp-pdf/README.md

69 lines
4.1 KiB
Markdown
Raw Normal View History

2018-07-30 13:26:01 +03:00
Category Theory for Programmers
2017-09-22 21:31:49 +03:00
====
2018-07-30 13:26:01 +03:00
![image](https://user-images.githubusercontent.com/601206/43392303-f770d7be-93fb-11e8-8db8-b7e915b435ba.png)
2019-08-13 00:27:24 +03:00
<b>Direct link: [category-theory-for-programmers.pdf](https://github.com/hmemcpy/milewski-ctfp-pdf/releases/download/v1.3.0/category-theory-for-programmers.pdf)</b>
(Latest release: v1.3.0, August 2019. See [releases](https://github.com/hmemcpy/milewski-ctfp-pdf/releases) for additional formats and languages.)
2017-09-22 21:31:49 +03:00
2018-07-30 13:26:01 +03:00
[![Build Status](https://travis-ci.org/hmemcpy/milewski-ctfp-pdf.svg?branch=master)](https://travis-ci.org/hmemcpy/milewski-ctfp-pdf)
[(latest CI build)](https://s3.amazonaws.com/milewski-ctfp-pdf/category-theory-for-programmers.pdf)
2018-10-21 22:39:22 +03:00
<img src="https://user-images.githubusercontent.com/601206/47271389-8eea0900-d581-11e8-8e81-5b932e336336.png"
alt="Buy Category Theory for Programmers" width=410 />
2019-08-29 22:49:13 +03:00
**[Available in full-color hardcover print](https://www.blurb.com/b/9621951-category-theory-for-programmers-new-edition-hardco)**
Publish date: 12 August, 2019. Based off release tag [v1.3.0](https://github.com/hmemcpy/milewski-ctfp-pdf/releases/tag/v1.3.0). See [errata-1.3.0](errata-1.3.0.md) for changes and fixes since print.
2018-10-21 22:39:22 +03:00
2019-08-13 00:27:24 +03:00
**[Scala Edition is now available in paperback](https://www.blurb.com/b/9603882-category-theory-for-programmers-scala-edition-pape)**
Publish date: 12 August, 2019. Based off release tag [v1.3.0](https://github.com/hmemcpy/milewski-ctfp-pdf/releases/tag/v1.3.0). See [errata-scala](errata-scala.md) for changes and fixes since print.
2018-10-27 22:54:42 +03:00
This is an *unofficial* PDF version of "Category Theory for Programmers" by Bartosz Milewski, converted from his [blogpost series](https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/) (with permission!)
2017-09-22 22:30:47 +03:00
2017-10-01 09:22:44 +03:00
---
2017-09-25 22:40:34 +03:00
Conversion is done by scraping the blog with [Mercury Web Parser](https://mercury.postlight.com/web-parser/) to get a clean HTML content, modifying and tweaking with [Beautiful Soup](https://www.crummy.com/software/BeautifulSoup/), finally, converting to LaTeX with [Pandoc](https://pandoc.org/). See [scraper.py](https://github.com/hmemcpy/milewski-ctfp-pdf/blob/master/src/scraper.py) for additional information.
2017-09-22 21:31:49 +03:00
2017-10-01 09:22:44 +03:00
Please [report](https://github.com/hmemcpy/milewski-ctfp-pdf/issues) any formatting/content issues, or better yet, send a PR!
Building
--------
2018-09-20 11:06:25 +03:00
Chances for successful compilation are increased if you have almost complete installation of recent [TeX Live 2017](https://www.tug.org/texlive/) distribution (the PDF here is compiled with 2017 release). The needed OpenType fonts must be installed in the operating system. In addition, [pygments](http://pygments.org/) for Python must be installed as well.
2017-10-01 09:22:44 +03:00
The `src` directory contains the LaTeX sources. To recompile the book, go there and enter:
```bash
$ make
```
2018-09-20 11:06:25 +03:00
Upon successful compilation, the files will be placed in the `out` directory next to `src`.
2017-10-01 09:22:44 +03:00
2018-09-20 11:06:25 +03:00
The file `preamble.tex` contains all the configuration and style declarations.
2017-09-30 13:21:24 +03:00
2017-09-22 21:31:49 +03:00
Acknowledgements
----------------
2017-10-01 09:22:44 +03:00
PDF LaTeX source and the tools to create it are based on the work by Andres Raba et al., available here: https://github.com/sarabander/sicp-pdf.
The book content is taken, with permission, from Bartosz Milewski's blogpost series, and adapted to the LaTeX format.
2017-09-20 23:07:58 +03:00
2018-03-31 13:48:55 +03:00
Thanks to the following people for contributing corrections/conversions and misc:
2017-09-20 23:07:58 +03:00
* Oleg Rakitskiy
2017-10-18 11:00:38 +03:00
* Jared Weakly
* Paolo G. Giarrusso
* Adi Shavit
2018-09-14 00:14:40 +03:00
* Mico Loretan
* Marcello Seri
2018-03-31 13:48:55 +03:00
* Erwin Maruli Tua Pakpahan
* Markus Hauck
2018-09-14 00:14:40 +03:00
* Yevheniy Zelenskyy
2018-11-07 09:55:00 +03:00
* Ross Kirsling
2017-10-18 11:00:38 +03:00
* ...and many others!
2017-09-22 21:31:49 +03:00
2018-01-04 00:17:32 +03:00
Note from Bartosz: I really appreciate all your contributions. You made this book much better than I could have imagined. Thank you!
2017-09-22 21:31:49 +03:00
License
-------
2017-09-30 13:21:24 +03:00
The PDF book, `.tex` files, and associated images and figures in directories `src/fig` and `src/content` are licensed under Creative Commons Attribution-ShareAlike 4.0 International License ([cc by-sa](http://creativecommons.org/licenses/by-sa/4.0/)).
2017-09-22 22:30:47 +03:00
2017-10-16 21:36:25 +03:00
The script files `scraper.py` and others are licensed under GNU General Public License version 3 (for details, see [LICENSE](https://github.com/hmemcpy/milewski-ctfp-pdf/blob/master/LICENSE)).