diff --git a/artifacts/handout.pdf b/artifacts/handout.pdf index 704397a..408a9a5 100644 Binary files a/artifacts/handout.pdf and b/artifacts/handout.pdf differ diff --git a/artifacts/slides.pdf b/artifacts/slides.pdf index 8d93289..e1d163d 100644 Binary files a/artifacts/slides.pdf and b/artifacts/slides.pdf differ diff --git a/flake.nix b/flake.nix index 6606d15..7da5513 100644 --- a/flake.nix +++ b/flake.nix @@ -28,8 +28,15 @@ commonArgs = handout: { typstSource = "iotas.typ"; - fontPaths = [ "${pkgs.cascadia-code}/share/fonts/truetype" ]; virtualPaths = [ ]; + + fontPaths = [ + "${pkgs.cascadia-code}/share/fonts/truetype" + "${pkgs.cascadia-code}/share/fonts/opentype" + "${pkgs.cm_unicode}/share/fonts/opentype" + "${pkgs.unifont}/share/fonts/opentype" + ]; + unstable_typstPackages = [ { name = "polylux"; @@ -57,7 +64,10 @@ in { devShell = pkgs.mkShell { - nativeBuildInputs = [ pkgs.typst ]; + nativeBuildInputs = [ + pkgs.typst + pkgs.pdfpc + ]; }; packages.default = presentation; diff --git a/images/alwayshasbeenallfunctions.jpg b/images/alwayshasbeenallfunctions.jpg new file mode 100644 index 0000000..ef87988 Binary files /dev/null and b/images/alwayshasbeenallfunctions.jpg differ diff --git a/images/challenge-qrcode.png b/images/challenge-qrcode.png new file mode 100644 index 0000000..4b54975 Binary files /dev/null and b/images/challenge-qrcode.png differ diff --git a/images/slides-qrcode.png b/images/slides-qrcode.png new file mode 100644 index 0000000..7c2b499 Binary files /dev/null and b/images/slides-qrcode.png differ diff --git a/iotas.typ b/iotas.typ index 4cf238d..2a0ea21 100644 --- a/iotas.typ +++ b/iotas.typ @@ -53,6 +53,7 @@ ] #slide[ + #set align(horizon) = The $clam$-calculus #v(1em) @@ -110,25 +111,32 @@ #slide[ #set text(size: 25pt) + #grid(columns:(auto, auto), gutter:20pt, [ = The #S#K#I combinators #v(1em) #set text(size: 23pt) + #set align(horizon) - - Any term in the $clam$-calculus can be written using nothing but the #S#K combinators. #later[For example $#I := #S #K #S$. + Any term in the $clam$-calculus can be written using nothing but the #S#K combinators. - #align(horizon+center)[ - #image("images/ithinkshespartoftheskteam.jpg", width:40%) - ] -] + #show: later + For example $#I := #S #K #S$. + ],[ + #set align(horizon+center) + #uncover(2)[ + #image("images/ithinkshespartoftheskteam.jpg", height:80%) + ] + ]) ] #slide[ #set text(size: 25pt) = A combinator to conquer them all #v(1em) - #set text(size: 20pt) + #grid(columns:(auto, auto), gutter: 5pt,[ + #set text(size: 18pt) - Enter, the $iota$-combinator! + Enter _the $iota$-combinator_! $ iota := la(x, x #S #K) = #S (#S #I (#K #S))(#K #K). $ #show:later @@ -139,6 +147,13 @@ #K &= iota( iota (iota iota)) \ #S &= iota(iota(iota(iota iota))) $ + ],[ + #align(horizon)[ + #uncover(2)[ + #image("images/alwayshasbeenallfunctions.jpg") + ] + ] + ]) ] #slide[ @@ -206,7 +221,9 @@ #align(bottom)[ #set text(size: 11pt) + #uncover(2)[ Note: the naturals are essentially just ordered lists of the unit type, but don't worry about that. + ] ] ] @@ -315,7 +332,23 @@ ] #slide[ + #set page(margin:5pt) #align(center+horizon)[ + #set text(size: 18pt) + #grid(columns:(35%,35%), + gutter:5pt, + [ + #set align(top) + #image("images/slides-qrcode.png", height:50%) + Slide repository + ], + [ + #set align(top) + #image("images/challenge-qrcode.png", height:50%) + The riddle from my team's previous presentation + ] + ) + #set text(size: 35pt) ✨ Thanks You! ✨ ]