milewski-ctfp-pdf README

The project's README from github.com/hmemcpy/milewski-ctfp-pdf. As one markdown file: README.md.

GitHub stars GitHub Workflow Status Download License

Category Theory For Programmers

An unofficial PDF version of "Category Theory For Programmers" by Bartosz Milewski, converted from his blogpost series (with permission!).

Category Theory for Programmers

Buy the book

Build the book

The building workflow requires Nix. After installing Nix, you need to enable the upcoming "flake" feature which must be enabled manually the time being. This is needed to expose the new Nix commands and flakes support that are hidden behind feature-flags.

Afterwards, type nix flake show in the root directory of the project to see all the available versions of this book. Then type nix build .#<edition> to build the edition you want (Scala, OCaml, Reason and their printed versions). For example, to build the Scala edition you'll have to type nix build .#ctfp-scala. For Haskell (the original version) that is just nix build .#ctfp.

Upon successful compilation, the PDF file will be placed in the result directory.

The command nix develop will provide a shell containing all the required dependencies to build the book manually using the provided Makefile. To build the ctfp-scala edition, just run make ctfp-scala.

Contribute

Contributors are welcome to contribute to this book by sending pull-requests. Once reviewed, the changes are merged in the main branch and will be incorporated in the next release.

Note from Bartosz: I really appreciate all your contributions. You made this book much better than I could have imagined. Thank you!

Find the list of contributors on Github.

Acknowledgements

PDF LaTeX source and the tools to create it are based on the work by Andres Raba. The book content is taken, with permission, from Bartosz Milewski's blogpost series, and adapted to the LaTeX format.

The original blog post acknowledgments by Bartosz are consolidated in the Acknowledgments page at the end of the book.

License

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.

The script files scraper.py and others are licensed under GNU General Public License version 3.

milewski-ctfp-pdf (hmemcpy/milewski-ctfp-pdf)

Searching Database…

这是什么?这是 Bartosz Milewski 所著《Category Theory for Programmers》一书的非官方 PDF 和 LaTeX 版本,由他的博客系列文章转换而来,并已获得他的许可。
构建它需要用 Nix 吗?需要。构建流程基于 Nix;运行 nix develop 还会提供一个包含所有依赖的 shell,方便你通过提供的 Makefile 手动构建。
这本书有不同版本吗?有。除了原版 Haskell 版,还有 Scala、OCaml 和 Reason 版,每个版本都可以构建成电子版或印刷版。
读这本书需要懂 Haskell 吗?原版的代码示例使用 Haskell,但为喜欢其他语言的程序员,还提供了 Scala、OCaml 和 Reason 版。
能买到纸质版吗?可以。精装全彩标准版和平装 Scala 版都在 Blurb 上销售,两者均于2019年8月12日出版,基于发布标签 v1.3.0。
这个项目还在更新吗?还在更新。贡献者提交 pull request,经审阅后合并到主分支,并纳入下一个版本。
我能看看纸质版之后有哪些改动吗?可以。仓库中记录了勘误表(errata-1.3.0 和 errata-scala),列出了纸质版定稿后所做的修正和改动。
Creator
hmemcpy
Size
71.3 MB
Stars
11.7K
Age
9y
Commits · 90 Days