(+ ("foo" 27) 32)
+ - (+ 37 "foo")
- Y = λf.(λx.f (x x)) (λx.f (x x))
- Y g = g (Y g)
diff --git a/categories/10_Introduction/150_Untyped_Pure_Programming.html b/categories/10_Introduction/150_Untyped_Pure_Programming.html
new file mode 100644
index 0000000..c0742af
--- /dev/null
+++ b/categories/10_Introduction/150_Untyped_Pure_Programming.html
@@ -0,0 +1,6 @@
+Untyped Pure Programming
+
+
+(+ 42 "foo")
+
+
diff --git a/categories/10_Introduction/130_Typed_Pure_Programming.html b/categories/10_Introduction/160_Typed_Pure_Programming.html
similarity index 100%
rename from categories/10_Introduction/130_Typed_Pure_Programming.html
rename to categories/10_Introduction/160_Typed_Pure_Programming.html
diff --git a/categories/10_Introduction/140_Polymorphism_mappend.html b/categories/10_Introduction/170_Polymorphism_mappend.html
similarity index 100%
rename from categories/10_Introduction/140_Polymorphism_mappend.html
rename to categories/10_Introduction/170_Polymorphism_mappend.html
diff --git a/categories/10_Introduction/150_Polymorphism.html b/categories/10_Introduction/180_Polymorphism.html
similarity index 100%
rename from categories/10_Introduction/150_Polymorphism.html
rename to categories/10_Introduction/180_Polymorphism.html
diff --git a/categories/10_Introduction/160_Programming_Paradigms.html b/categories/10_Introduction/190_Programming_Paradigms.html
similarity index 100%
rename from categories/10_Introduction/160_Programming_Paradigms.html
rename to categories/10_Introduction/190_Programming_Paradigms.html
diff --git a/categories/10_Introduction/170_Type_Theory_Categories.html b/categories/10_Introduction/200_Type_Theory_Categories.html
similarity index 100%
rename from categories/10_Introduction/170_Type_Theory_Categories.html
rename to categories/10_Introduction/200_Type_Theory_Categories.html
diff --git a/categories/head.html b/categories/head.html
index 45d820e..1b1d702 100644
--- a/categories/head.html
+++ b/categories/head.html
@@ -43,7 +43,7 @@
}
-
+
\(\newcommand{\F}{\mathbf{F}}\)
diff --git a/categories/img/mp/pipe.mp b/categories/img/mp/pipe.mp
index 49e75bd..08d1bab 100644
--- a/categories/img/mp/pipe.mp
+++ b/categories/img/mp/pipe.mp
@@ -19,7 +19,6 @@ vardef hiddenoutmouth(expr pos) =
enddef;
def drawoutmouth(expr pos) =
draw outmouth(pos);
- draw hiddenoutmouth(pos) dashed evely;
enddef;
def drawtube(expr pos) =
@@ -48,11 +47,8 @@ enddef;
def drawtwotubes(expr posintop,posinbot,posout) =
begingroup;
draw outmouth(posintop);
- draw hiddenoutmouth(posintop) dashed evenly;
draw outmouth(posinbot);
- draw hiddenoutmouth(posinbot) dashed evenly;
draw outmouth(posout);
- draw hiddenoutmouth(posout) dashed evenly;
save intopt,intopb,inbott,inbotb,outt,outb;
pair intopt,intopb,inbott,inbotb,outt,outb;
@@ -74,16 +70,18 @@ def drawtwotubeslabel(expr ptop,pbot,pout,l) =
drawtwotubes(ptop,pbot,pout);
save mid;
pair mid;
- mid = 1/4ptop+1/4pbot+1/2pout;
+ mid = 6/30ptop+6/30pbot+18/30pout;
label(l,mid);
endgroup;
enddef;
-def drawbegintube (expr pos) =
- draw (subpath (4,8) of fullcircle rotated -90) scaled 2u shifted pos shifted (-2u,0);
- draw (pos shifted (-2u,u)){right}..{right}(pos shifted (0,u));
- draw (pos shifted (-2u,-u)){right}..{right}(pos shifted (0,-u));
+def drawlongbegintube (expr pos,len) =
+ draw (subpath (4,8) of fullcircle rotated -90) scaled 2u shifted pos shifted (-len,0);
+ draw (pos shifted (-len,u)){right}..{right}(pos shifted (0,u));
+ draw (pos shifted (-len,-u)){right}..{right}(pos shifted (0,-u));
draw outmouth(pos);
- draw hiddenoutmouth(pos) dashed evenly;
+enddef;
+def drawbegintube (expr pos) =
+ drawlongbegintube(pos,2u);
enddef;
def drawbegintubelabel(expr pos,l) =
@@ -98,9 +96,7 @@ def drawtube(expr pos) =
midin := pos;
midout := pos shifted (gu,0);
draw outmouth(midin);
- draw hiddenoutmouth(midin) dashed evenly;
draw outmouth(midout);
- draw hiddenoutmouth(midout) dashed evenly;
save topin,topout,botin,botout;
pair topin,topout,botin,botout;
@@ -118,14 +114,36 @@ def drawtubelabel(expr pos,l) =
enddef;
pair pos;
-pos:=(gu,gu);
-drawbegintubelabel(pos shifted (-gu,.5gu),btex $37$ etex);
-drawbegintubelabel(pos shifted (-gu,-.5gu),btex $\mathtt{"foo"}$ etex);
+pos:=origin;
+z0=(2.5gu,.5gu);
+z1=(0,-1.5gu);
+z2=z1 shifted (3gu,0);
+
+drawbegintubelabel(pos shifted (-.5gu,.5gu),btex $42$ etex);
+drawbegintubelabel(pos shifted (-.5gu,-.5gu),btex $\mathtt{"foo"}$ etex);
drawtwotubeslabel(pos shifted (0,.5gu), pos shifted (0,-.5gu), pos shifted (gu,0),btex $+$ etex);
+draw inmouth(pos shifted (0,.5gu) );
+draw inmouth(pos shifted (0,-.5gu) );
-z0=origin;
-drawbegintubelabel(z0,btex $37$ etex);
+drawbegintubelabel(z0 shifted (-2u,-gu),btex $\mathtt{"foo"}$ etex);
+drawoptions(withcolor green);
+drawbegintubelabel(z0,btex $42$ etex);
drawtwotubeslabel(z0, z0 shifted (0,-gu), z0 shifted (gu,-0.5gu),btex $+$ etex);
+draw inmouth(z0 shifted (0,-gu));
-drawtubelabel(z0 shifted (2gu,-.5gu),btex $37+$ etex);
+
+drawoptions(withcolor green);
+drawbegintubelabel(z1,btex $\mathtt{"foo"}$ etex);
+drawtubelabel(z1,btex $\mathtt{(+\ 42)}$ etex)
+
+drawoptions(withcolor red);
+drawlongbegintube(z2,5u);
+label(btex $\mathtt{(+\ 42\ "foo")}$ etex,z2 shifted (-3u,0));
+draw z2 shifted (-4u,2u) -- z2 shifted (0,-2u) dashed evenly withpen pencircle scaled 1bp;
+draw z2 shifted (-4u,-2u) -- z2 shifted (0,2u) dashed evenly withpen pencircle scaled 1bp;
+
+drawoptions(withcolor base01);
+drawarrow pos shifted (gu+2u,0) -- pos shifted (gu+4u,0);
+drawarrow z0 shifted (-gu,-gu-u) .. z1 shifted (gu,2u);
+drawarrow pos shifted (gu+u,-1.5gu) -- pos shifted (gu+3u,-1.5gu);
diff --git a/categories/img/mp/pipe.png b/categories/img/mp/pipe.png
index 7d00926..4559730 100644
Binary files a/categories/img/mp/pipe.png and b/categories/img/mp/pipe.png differ
diff --git a/themes/style/y/main.css b/themes/style/y/main.css
index ae28ad9..eaf9814 100644
--- a/themes/style/y/main.css
+++ b/themes/style/y/main.css
@@ -33,6 +33,10 @@
font-weight: normal;
font-style: normal; }
+body.deck-container {
+ width: 100%;
+ padding: 0; }
+
.deck-container {
font-family: "ComputerModernSansSerif", Helvetica, sans-serif;
/* Header Numbering */ }
@@ -171,8 +175,10 @@
.deck-container blockquote {
font-style: italic;
padding: 0 1em;
- border-left: solid 10px #586e75;
- color: #93a1a1; }
+ border-left: solid 10px #586e75; }
+ .deck-container blockquote em {
+ font-style: normal;
+ color: #93a1a1; }
.deck-container blockquote ul {
padding-left: 1.5em; }
.deck-container abbr,
@@ -806,7 +812,11 @@
margin-bottom: 1em; }
.deck-container table {
border: 1px solid #586e75;
- width: 100%; }
+ width: 90%;
+ margin: 1.5em auto;
+ box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box; }
.deck-container table tr td {
padding: 2px 0.5em; }
.deck-container table tr:nth-child(odd) {
@@ -883,7 +893,7 @@
font-size: 4em; } }
@media only screen and (max-width: 1380px) {
.deck-container {
- font-size: 2em; } }
+ font-size: 2.5em; } }
@media only screen and (max-width: 640px) {
.deck-container {
font-size: 1.5em; } }
@@ -920,6 +930,9 @@ body.deck-container {
font-size: 0.5em; }
.deck-container .deck-prev-link,
.deck-container .deck-next-link {
+ position: absolute;
+ top: 90%;
+ bottom: 1em;
background-color: #073642;
color: #586e75; }
.deck-container .deck-prev-link:visited,
diff --git a/themes/style/y/main.sass b/themes/style/y/main.sass
index 311e8e9..be22e6c 100644
--- a/themes/style/y/main.sass
+++ b/themes/style/y/main.sass
@@ -180,6 +180,10 @@ $secondTextColor: $base1
color: $base02
color: $base0
+body.deck-container
+ width: 100%
+ padding: 0
+
.deck-container
.base03
color: $base03
@@ -335,7 +339,9 @@ $secondTextColor: $base1
font-style: italic
padding: 0 1em
border-left: solid 10px $base01
- color: $base1
+ em
+ font-style: normal
+ color: $base1
ul
padding-left: 1.5em
@@ -1040,7 +1046,11 @@ $secondTextColor: $base1
table
border: 1px solid $borderColor
- width: 100%
+ width: 90%
+ margin: 1.5em auto
+ box-sizing: border-box
+ -moz-box-sizing: border-box
+ -webkit-box-sizing: border-box
table tr td
padding: 2px .5em
table tr
@@ -1124,7 +1134,7 @@ $secondTextColor: $base1
font-size: 4em
@media only screen and (max-width: 1380px)
.deck-container
- font-size: 2em
+ font-size: 2.5em
@media only screen and (max-width: 640px)
.deck-container
font-size: 1.5em
@@ -1164,6 +1174,9 @@ body.deck-container
.deck-prev-link,
.deck-next-link
+ position: absolute
+ top: 90%
+ bottom: 1em
&:visited
color: $base01
&:hover