Skip to content

Commit

Permalink
finish the applicative chapter (#34)
Browse files Browse the repository at this point in the history
* wip started on new section in chapter 11

* edit first part of chapter 11

* adding subsections for the applicative laws

* add link to fastparse

* minor additions

* wip equivalence of ap, map2, and zip

* remove slides that have been transcribed

* add Scala example

* finished writing up equivalence proofs of zip, ap, map2

* write a section about equivalence under laws

* corrections and clarifications to the section about function equivalence under laws

* clarification about naturality laws

* wip deriving the laws of zip

* make slides for a new presentation

* update slides

* update slides

* wip laws for zip

* minor corrections

* update for functors, add exercise

* minor correction

* wip zip laws

* minor corrections in the index

* wip laws of ap

* wip deriving the laws of ap

* update tex files

* wip laws of ap

* wip laws of ap

* clarify value-like behavior concept

* move section about ap to the end of chapter

* prove the composition laws in the applicative category

* fix typos

* wip derivation of the functor laws of ap

* wip proof of associativity law of ap

* finish the proof of category laws of ap

* add exercise

* minor changes

* wip applicative functor constructions

* wip applicative functor constructions

* added diatribes about Liskov principle and about licensing engineers

* update tex

* update page number

* minor change

* minor update

* update pdf

* wip commutative constructions

* minor change

* proof of co-product applicative constructions

* wip selector applicative

* wip proof of selector applicative functor

* update tex files

* wip proof of selector applicative functor

* wip current changes

* wip proof of selector applicative functor

* wip shortened associativity law of zip

* proofs of commutative applicative laws

* wip proofs for the selector applicative functor

* wip proof of selector applicative functor

* wip proof of associativity

* is it really associative?

* wip commutative applicative functors

* remove mistaken claims about selector applicative functor

* wip proof of first recursive construction

* minor additions

* wip another co-product construction

* wip recursive constructions

* finish proofs of recursive applicative functor constructions

* begin applicative contrafunctor constructions

* wip applicative contrafunctors

* fix reference

* wip typeclasses in categorical setting

* wip section about functorial typeclasses

* add index entry

* minor changes

* minor update

* finish section on relationship between monads and applicatives

* minor change

* minor changes

* minor changes

* minor updates

* proof of exponential construction for contrafunctors

* prove the commutativity law in construction 4

* wip proof of composition for applicative contrafunctors

* proof of composition for applicative contrafunctors

* wip applicative contrafunctors

* wip proof of co-product construction for applicative contrafunctors

* minor update

* wip proofs for contrafunctor constructions

* finish applicative contrafunctor proofs

* minor corrections

* minor corrections

* improve formatting

* improve formatting

* update page number

* misc corrections for profunctors

* fix exercise for proof

* clarify category theory usage

* product of applicative profunctors

* update pdf

* proof of the exponential profunctor construction

* minor correction

* update tex files

* a

* update readme

* fix the proof for co-pointed construction

* additional exercise and example

* add compatibility law to another statement

* finish proofs with applicative profunctors

* minor corrections

* corrections for chapter 3

* corrections in parametricity chapter

* first set of corrections in chapter 11

* update latex files

* better parser code

* more corrections

* more corrections in chapter 11

* update tex files

* minor changes

* minor changes

* minor corrections

* update tex files

* last changes to chapter 11

* last corrections

Co-authored-by: sergei.winitzki <sergei.winitzki@workday.com>
  • Loading branch information
winitzki and sergei.winitzki committed Jun 22, 2021
1 parent 83de3ae commit 85bf86a
Show file tree
Hide file tree
Showing 45 changed files with 30,782 additions and 6,136 deletions.
5 changes: 2 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,12 +82,11 @@ or if they wish to make comments or suggestions regarding the contents of the bo

# Building a PDF version of the book from LyX sources

The current build of the full PDF file is available as [sofp-src/sofp.pdf](sofp-src/sofp.pdf).
It contains the proofread chapters as well as some chapters that are not ready and may contain some partial text and some older slides.

If you want to build from source, currently you need `LyX` 2.3.x and `pdftk` installed.

The command `bash make_sofp_pdf.sh` builds PDF files `sofp.pdf` and `sofp-draft.pdf`.
The first file is a full draft with some unfinished chapters,
the second file contains only finished and proofread chapters.

If this does not work, you can build manually with a simple command such as `lyx --export pdf sofp.lyx`,
but the resulting PDF version will lack certain cosmetic features such as special colors and formatting.
Expand Down
File renamed without changes
2 changes: 1 addition & 1 deletion sofp-src/book_cover/sofp-cover-parameters.tex
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
% -- Ingram: page count MUST be divisible by 2.
% -- Blurb : page count MUST be divisible by 6.
% Add blank pages as needed in final PDF generations!
\pgfmathsetmacro\TotalPageCount{672}% Must be manually entered
\pgfmathsetmacro\TotalPageCount{673}% Must be manually entered
\pgfmathsetmacro\PaperWidthPt{7.444in}%
\pgfmathsetmacro\PaperHeightPt{9.68in}%

Expand Down
4 changes: 2 additions & 2 deletions sofp-src/check_and_make_draft.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
name="sofp"

# Expected total number of pages in the book draft:
draft_pages=672
draft_pages=673

# The number of pages in each chapter:
pagecounts=(3 17 42 34 24 49 43 12 63 54 63 24 6 27 148 4 5 6 3 6 6 3 5 48 17 1 2 1 1 6)
pagecounts=(3 17 42 34 24 49 43 12 63 54 63 62 6 27 148 4 5 6 3 6 6 3 5 48 18 1 2 1 1 6)

# To create the draft version that contains only proofread chapters:
# cut out from here, including:
Expand Down
Loading

0 comments on commit 85bf86a

Please sign in to comment.