diff --git a/adt/adt.html b/adt/adt.html index b3fc3575..6065a4af 100644 --- a/adt/adt.html +++ b/adt/adt.html @@ -24,7 +24,7 @@ - @@ -179,7 +182,7 @@

Algebraic Data Types import doodle.java2d._

</div>

- ←Algebraic Data Types Transforming Sequences→ + ←Algebraic Data Types Build Your Own Turtle→
diff --git a/adt/turtle.html b/adt/turtle.html index 2db4f2ee..db5852af 100644 --- a/adt/turtle.html +++ b/adt/turtle.html @@ -24,9 +24,9 @@ - @@ -295,7 +298,7 @@

Build Your Own Turtle

Extensions

Turtles that can make random choices can lead to more organic images. Can you implement this?

- ←Animation and Fireworks Algebraic Data Types→ + ←Algebraic Data Types To Call Our Own Recursive Algorithms→
diff --git a/animation/easing.html b/animation/easing.html index d7583738..ba597960 100644 --- a/animation/easing.html +++ b/animation/easing.html @@ -24,9 +24,9 @@ - @@ -174,15 +177,15 @@

Easing Functions

.withRender(r => Image.circle(r)) // bubble: Reactor[Double] = Reactor( // initial = 0.0, -// onMouseClickHandler = doodle.reactor.Reactor$$$Lambda$15390/0x0000000103fb5840@4b60bd53, -// onMouseMoveHandler = doodle.reactor.Reactor$$$Lambda$15391/0x0000000103fb6840@72b9c2ef, -// onTickHandler = doodle.reactor.Reactor$$$Lambda$15395/0x0000000103fbf040@3c94fbb7, +// onMouseClickHandler = doodle.reactor.Reactor$$$Lambda$13979/0x0000000103bb0040@62ae32fd, +// onMouseMoveHandler = doodle.reactor.Reactor$$$Lambda$13980/0x0000000103bb1040@c4a9bbe, +// onTickHandler = doodle.reactor.Reactor$$$Lambda$13984/0x0000000103bb7040@6a82afe, // tickRate = 100 milliseconds, -// renderHandler = repl.MdocSession$MdocApp$$Lambda$15397/0x0000000103fbd040@46da0d3d, -// stopHandler = doodle.reactor.Reactor$$$Lambda$15396/0x0000000103fbe040@56840649 +// renderHandler = repl.MdocSession$MdocApp$$Lambda$13986/0x0000000103bb5040@5b883e45, +// stopHandler = doodle.reactor.Reactor$$$Lambda$13985/0x0000000103bb6040@c879aba // )
- ←Part One: Conclusions Reactors→ + ←Controlling the Turtle Animation and Fireworks→
diff --git a/animation/index.html b/animation/index.html index c850cf24..ff33e521 100644 --- a/animation/index.html +++ b/animation/index.html @@ -24,9 +24,9 @@ - @@ -180,7 +183,7 @@

Animation and Fireworks

import doodle.interact.syntax._

</div>

- ←Reactors Build Your Own Turtle→ + ←Easing Functions Reactors→
diff --git a/animation/reactor.html b/animation/reactor.html index 32794025..853a6bb7 100644 --- a/animation/reactor.html +++ b/animation/reactor.html @@ -24,9 +24,9 @@ - @@ -202,7 +205,7 @@

Exercise: Rose Curve

Frame.default.withSize(600, 600).withBackground(Color.midnightBlue)

Remember you will need to import doodle.reactor._ to make the reactor library available.

- ←Easing Functions Animation and Fireworks→ + ←Animation and Fireworks
diff --git a/collections/create.html b/collections/create.html index 4e719ab3..7c39504d 100644 --- a/collections/create.html +++ b/collections/create.html @@ -24,9 +24,9 @@ - @@ -210,7 +213,7 @@

Creating Sequences

// List(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

Let's see what we can do with these sequences.

- ←Transforming Sequences Drawing Paths→ + ←Loading Data Using a Source Collections {#collections}→
diff --git a/collections/index.html b/collections/index.html index 7945ab27..e85ff68e 100644 --- a/collections/index.html +++ b/collections/index.html @@ -24,9 +24,9 @@ - @@ -173,7 +176,7 @@

Collections {#collections}

In this chapter we will look at the Lists, which are without a doubt the best known data type in functional programming.

- ←Take Home Points + ←Creating Sequences Transforming Sequences→
diff --git a/collections/paths.html b/collections/paths.html index 9b965aaf..c5aaea6d 100644 --- a/collections/paths.html +++ b/collections/paths.html @@ -24,7 +24,7 @@ - @@ -227,7 +230,7 @@

Take Home Points

but it's interesting to note that even ad hoc functional programs can follow the same basic structure.

- ←Drawing Paths Collections {#collections}→ + ←Drawing Paths My God, It's Full of Stars!→
diff --git a/collections/transform.html b/collections/transform.html index eab310a3..34a193f4 100644 --- a/collections/transform.html +++ b/collections/transform.html @@ -24,9 +24,9 @@ - @@ -360,7 +363,7 @@

Transforming Sequences

the function returns true. ----------------------------------------------------------------------------------

- ←Algebraic Data Types To Call Our Own Creating Sequences→ + ←Collections {#collections} Drawing Paths→
diff --git a/creative-scala.css b/creative-scala.css index 350e2f49..786cc418 100644 --- a/creative-scala.css +++ b/creative-scala.css @@ -1,5 +1,5 @@ /* -! tailwindcss v3.3.3 | MIT License | https://tailwindcss.com +! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com */ /* diff --git a/cycles/composition.html b/cycles/composition.html index 051a1159..fb840f91 100644 --- a/cycles/composition.html +++ b/cycles/composition.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/cycles/conclusions.html b/cycles/conclusions.html index 7af5aa0f..5d7a7e70 100644 --- a/cycles/conclusions.html +++ b/cycles/conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/cycles/culmination.html b/cycles/culmination.html index 60e120b2..3ded2255 100644 --- a/cycles/culmination.html +++ b/cycles/culmination.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/cycles/epicycles.html b/cycles/epicycles.html index 821908a3..8cd50f68 100644 --- a/cycles/epicycles.html +++ b/cycles/epicycles.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/cycles/fun.html b/cycles/fun.html index bb43ecbf..a035fb70 100644 --- a/cycles/fun.html +++ b/cycles/fun.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/cycles/index.html b/cycles/index.html index eac00c2e..db31f322 100644 --- a/cycles/index.html +++ b/cycles/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/cycles/interpolation.html b/cycles/interpolation.html index 2833d4a5..a18e78d0 100644 --- a/cycles/interpolation.html +++ b/cycles/interpolation.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/data/case-classes.html b/data/case-classes.html index f6ff37a8..c1f8fdb8 100644 --- a/data/case-classes.html +++ b/data/case-classes.html @@ -24,9 +24,9 @@ - @@ -205,7 +208,7 @@

Declaring and Using Ca

The terminology "instance" and "constructor" comes from the field of object-oriented programming.

- ←Solutions to Exercises {#solutions} Data→ + ←Creating and Working With Data Introduction→
diff --git a/data/data.html b/data/data.html index dfdda90a..2e40daf0 100644 --- a/data/data.html +++ b/data/data.html @@ -24,7 +24,7 @@ - @@ -176,7 +179,7 @@

Creating and Working With
  • algebraic data types, and structural recursion over algebraic data types.
  • - ←Data Branching Structures→ + ←Data Case Classes→
    diff --git a/declarations/color-palette.html b/declarations/color-palette.html index 049c2db8..69e6eef2 100644 --- a/declarations/color-palette.html +++ b/declarations/color-palette.html @@ -26,7 +26,7 @@ +

    @@ -381,7 +384,7 @@

    Beyond Two-Color Palettes

    </div>

    - ←Method Declarations Take Home Points→ + ←Method Declarations Declarations→
    diff --git a/declarations/index.html b/declarations/index.html index 769a57e4..cee44895 100644 --- a/declarations/index.html +++ b/declarations/index.html @@ -24,9 +24,9 @@ - @@ -175,7 +178,7 @@

    Declarations

    However, they do bind names that can be used as expressions. There are several types of declaration in Scala as we shall see below.

    - ←Take Home Points Summary→ + ←Extended Exercise: Color Palettes Take Home Points→
    diff --git a/declarations/method-declarations.html b/declarations/method-declarations.html index b7c6a233..54d07418 100644 --- a/declarations/method-declarations.html +++ b/declarations/method-declarations.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/declarations/take-home-points.html b/declarations/take-home-points.html index ed8ead74..3f4179cf 100644 --- a/declarations/take-home-points.html +++ b/declarations/take-home-points.html @@ -24,9 +24,9 @@ - @@ -190,7 +193,7 @@

    Take Home Points

    the substitution model allows us to ignore the implementation details and treat the method as a black box.

    - ←Extended Exercise: Color Palettes Declarations→ + ←Declarations
    diff --git a/declarations/value-declarations.html b/declarations/value-declarations.html index 3168b5d6..3cf762ab 100644 --- a/declarations/value-declarations.html +++ b/declarations/value-declarations.html @@ -24,7 +24,7 @@ - diff --git a/expanding-expressions/03-objects.html b/expanding-expressions/03-objects.html index 7cc897c2..cc9bfe43 100644 --- a/expanding-expressions/03-objects.html +++ b/expanding-expressions/03-objects.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expanding-expressions/04-types.html b/expanding-expressions/04-types.html index b74747e3..f8c0fa6a 100644 --- a/expanding-expressions/04-types.html +++ b/expanding-expressions/04-types.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expanding-expressions/05-exercises.html b/expanding-expressions/05-exercises.html index 26f11eed..04b63f21 100644 --- a/expanding-expressions/05-exercises.html +++ b/expanding-expressions/05-exercises.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expanding-expressions/index.html b/expanding-expressions/index.html index ebbee764..db37359c 100644 --- a/expanding-expressions/index.html +++ b/expanding-expressions/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressions/02-starting.html b/expressions/02-starting.html index aad00975..edc6f630 100644 --- a/expressions/02-starting.html +++ b/expressions/02-starting.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressions/03-expressions.html b/expressions/03-expressions.html index 13f92a20..2e8cec02 100644 --- a/expressions/03-expressions.html +++ b/expressions/03-expressions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressions/04-types.html b/expressions/04-types.html index f0ec2b3c..c50d386c 100644 --- a/expressions/04-types.html +++ b/expressions/04-types.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressions/05-exercises.html b/expressions/05-exercises.html index e26f6c27..94eae307 100644 --- a/expressions/05-exercises.html +++ b/expressions/05-exercises.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressions/06-conclusions.html b/expressions/06-conclusions.html index 8b205fda..49343dfd 100644 --- a/expressions/06-conclusions.html +++ b/expressions/06-conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressions/index.html b/expressions/index.html index b17becbb..69a4bcf9 100644 --- a/expressions/index.html +++ b/expressions/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressive-expressions/01-images.html b/expressive-expressions/01-images.html index 4fbcba21..eb32f9b3 100644 --- a/expressive-expressions/01-images.html +++ b/expressive-expressions/01-images.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressive-expressions/02-layout.html b/expressive-expressions/02-layout.html index 8aa698e3..d735f699 100644 --- a/expressive-expressions/02-layout.html +++ b/expressive-expressions/02-layout.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressive-expressions/03-color.html b/expressive-expressions/03-color.html index b76fbbed..91ac686a 100644 --- a/expressive-expressions/03-color.html +++ b/expressive-expressions/03-color.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressive-expressions/04-creating-color.html b/expressive-expressions/04-creating-color.html index 0c8ca4d9..167ba384 100644 --- a/expressive-expressions/04-creating-color.html +++ b/expressive-expressions/04-creating-color.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressive-expressions/05-exercises.html b/expressive-expressions/05-exercises.html index 1750c07e..575fc748 100644 --- a/expressive-expressions/05-exercises.html +++ b/expressive-expressions/05-exercises.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressive-expressions/06-conclusions.html b/expressive-expressions/06-conclusions.html index 2f7f243c..4f165b6b 100644 --- a/expressive-expressions/06-conclusions.html +++ b/expressive-expressions/06-conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/expressive-expressions/index.html b/expressive-expressions/index.html index 1322e378..54b7def9 100644 --- a/expressive-expressions/index.html +++ b/expressive-expressions/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/flowers/conclusions.html b/flowers/conclusions.html index 042e4393..f2aea441 100644 --- a/flowers/conclusions.html +++ b/flowers/conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/flowers/flowers.html b/flowers/flowers.html index 3dc77090..3c20f368 100644 --- a/flowers/flowers.html +++ b/flowers/flowers.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/flowers/fun.html b/flowers/fun.html index 7c250b7b..818488e6 100644 --- a/flowers/fun.html +++ b/flowers/fun.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/flowers/functions.html b/flowers/functions.html index 840f519d..5c86a68a 100644 --- a/flowers/functions.html +++ b/flowers/functions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + @@ -352,17 +355,17 @@

    Exercise: Function Literals

    The first function is

    (x: Int) => x * x
    -// res10: Function1[Int, Int] = repl.MdocSession$MdocApp0$$Lambda$15718/0x00000001040ca040@6952ddc0
    +// res10: Function1[Int, Int] = repl.MdocSession$MdocApp0$$Lambda$14307/0x0000000103cc9840@39be6178

    The second is

    (c: Color) => c.spin(15.degrees)
    -// res11: Function1[Color, HSLA] = repl.MdocSession$MdocApp0$$Lambda$15719/0x00000001040c9040@ee1630
    +// res11: Function1[Color, HSLA] = repl.MdocSession$MdocApp0$$Lambda$14308/0x0000000103cca840@5059bfe0

    The third is

    (image: Image) => 
       image.beside(image.rotate(90.degrees))
         .beside(image.rotate(180.degrees))
         .beside(image.rotate(270.degrees))
         .beside(image.rotate(360.degrees))
    -// res12: Function1[Image, Image] = repl.MdocSession$MdocApp0$$Lambda$15720/0x00000001040c8840@48d558be
    +// res12: Function1[Image, Image] = repl.MdocSession$MdocApp0$$Lambda$14309/0x0000000103ccb040@17b89bb8
    diff --git a/flowers/index.html b/flowers/index.html index 26bfc112..26742117 100644 --- a/flowers/index.html +++ b/flowers/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/flowers/parametric-curves.html b/flowers/parametric-curves.html index 5f387d59..8421ba85 100644 --- a/flowers/parametric-curves.html +++ b/flowers/parametric-curves.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/foreword-1.html b/foreword-1.html index 8732a52b..8581c8ab 100644 --- a/foreword-1.html +++ b/foreword-1.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/foreword-2.html b/foreword-2.html index 0de13908..dab3b32c 100644 --- a/foreword-2.html +++ b/foreword-2.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/fp/functions.html b/fp/functions.html index 2edc183d..e7100f63 100644 --- a/fp/functions.html +++ b/fp/functions.html @@ -24,7 +24,7 @@ - @@ -183,7 +186,7 @@

    Take Home Points

    which provides many convenient high level transformation methods that take functions as parameters.

    - ←Functions as Values (Functional) Programming→ + ←Functions as Values Syntax Quick Reference {#syntax-quick-reference}→
    diff --git a/fractals/auxillary-parameter.html b/fractals/auxillary-parameter.html index 5a825203..d09b36a4 100644 --- a/fractals/auxillary-parameter.html +++ b/fractals/auxillary-parameter.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/fractals/conclusions.html b/fractals/conclusions.html index 8784ab2e..1691531e 100644 --- a/fractals/conclusions.html +++ b/fractals/conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/fractals/exercises.html b/fractals/exercises.html index 26ce5543..89e3aacd 100644 --- a/fractals/exercises.html +++ b/fractals/exercises.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/fractals/fractals.html b/fractals/fractals.html index da03683d..0cd49c79 100644 --- a/fractals/fractals.html +++ b/fractals/fractals.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/fractals/index.html b/fractals/index.html index c016f3a7..3c5860e1 100644 --- a/fractals/index.html +++ b/fractals/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/fractals/nested-methods.html b/fractals/nested-methods.html index 2c22d764..b52a3f94 100644 --- a/fractals/nested-methods.html +++ b/fractals/nested-methods.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/generative/api.html b/generative/api.html index 251bf382..062e31cc 100644 --- a/generative/api.html +++ b/generative/api.html @@ -24,9 +24,9 @@ - @@ -403,7 +406,7 @@

    Random Abstractions {-}

    This separation between description and action means that substitution can be used. The description of how to perform a random walk can be used to create many different random walks.

    - ←Combining Random Values Exercises→ + ←Paths Randomness without Effect→
    diff --git a/generative/exercises.html b/generative/exercises.html index 27e27967..14a6ec4b 100644 --- a/generative/exercises.html +++ b/generative/exercises.html @@ -24,9 +24,9 @@ - @@ -370,7 +373,7 @@

    Parametric Noise

    }

    </div>

    - ←Exploring Random Randomness without Effect→ + ←For Comprehensions Combining Random Values→
    diff --git a/generative/flatmap.html b/generative/flatmap.html index 670b40c6..e91362fb 100644 --- a/generative/flatmap.html +++ b/generative/flatmap.html @@ -26,7 +26,7 @@ +

    @@ -361,15 +364,15 @@

    Randomness and Randomness {-} // c = FlatMapped( // c = FlatMapped( // c = Suspend(a = RDouble), -// f = cats.free.Free$$Lambda$15781/0x00000001040e8840@27f7e917 +// f = cats.free.Free$$Lambda$14370/0x0000000103ce4040@52efbfb5 // ), -// f = cats.free.Free$$Lambda$15781/0x00000001040e8840@22079d1a +// f = cats.free.Free$$Lambda$14370/0x0000000103ce4040@312e620c // ), -// f = cats.free.Free$$Lambda$15781/0x00000001040e8840@6fa37509 +// f = cats.free.Free$$Lambda$14370/0x0000000103ce4040@4482c3fa // ), -// f = repl.MdocSession$MdocApp5$$Lambda$15798/0x00000001040f5040@3fe9d03a +// f = repl.MdocSession$MdocApp5$$Lambda$14387/0x0000000103cf5040@4fe53357 // ), -// f = repl.MdocSession$MdocApp5$$Lambda$15801/0x0000000104101840@27ce3981 +// f = repl.MdocSession$MdocApp5$$Lambda$14390/0x0000000103cf2840@60583f09 // )

    which makes it clearer that we're generating three different circles. </div>

    @@ -390,7 +393,7 @@

    Colored Boxes {-}

    Random.double.map(x => x.turns) // randomAngle: Free[[A >: Nothing <: Any] => RandomOp[A], Angle] = FlatMapped( // c = Suspend(a = RDouble), -// f = cats.free.Free$$Lambda$15781/0x00000001040e8840@39bf8f2f +// f = cats.free.Free$$Lambda$14370/0x0000000103ce4040@22a41f0c // ) val randomColor: Random[Color] = @@ -398,9 +401,9 @@

    Colored Boxes {-}

    // randomColor: Free[[A >: Nothing <: Any] => RandomOp[A], Color] = FlatMapped( // c = FlatMapped( // c = Suspend(a = RDouble), -// f = cats.free.Free$$Lambda$15781/0x00000001040e8840@39bf8f2f +// f = cats.free.Free$$Lambda$14370/0x0000000103ce4040@22a41f0c // ), -// f = cats.free.Free$$Lambda$15781/0x00000001040e8840@4dc0be2c +// f = cats.free.Free$$Lambda$14370/0x0000000103ce4040@70eb95b1 // ) def coloredRectangle(color: Color): Image = @@ -418,7 +421,7 @@

    Colored Boxes {-}

    }

    </div>

    - ←Generative Art Introduction→ + ←Generative Art Composition of Generative Art→
    diff --git a/generative/for.html b/generative/for.html index b0f6c933..0b4215ef 100644 --- a/generative/for.html +++ b/generative/for.html @@ -24,9 +24,9 @@ - @@ -212,7 +215,7 @@

    For Comprehensions

    It just won't return a result. We're not going to use any of these extensions in Creative Scala, however.

    - ←(Functional) Programming Combining Random Values→ + ←Composition of Generative Art Exercises→
    diff --git a/generative/generative.html b/generative/generative.html index a97db973..59e860d8 100644 --- a/generative/generative.html +++ b/generative/generative.html @@ -24,7 +24,7 @@ - diff --git a/intro.html b/intro.html index b3a015a8..050409d5 100644 --- a/intro.html +++ b/intro.html @@ -24,9 +24,9 @@ - @@ -170,7 +173,7 @@

    Introduction

    blah blah blah blah blah

    - ←Combining Random Values Paths→ + ←Case Classes Summary→
    diff --git a/links.html b/links.html index 1d732d8e..4bff96c8 100644 --- a/links.html +++ b/links.html @@ -24,9 +24,9 @@ - @@ -169,7 +172,7 @@
    diff --git a/loading-data/index.html b/loading-data/index.html new file mode 100644 index 00000000..173f8e01 --- /dev/null +++ b/loading-data/index.html @@ -0,0 +1,211 @@ + + + + + + + + + Loading Data + + + + + + + + + + + + + + + + + + + +
    +
    +

    Loading Data

    +

    We'll start our exploration of data science by looking at climate data. Climate data is readily available and climate is a topical issue.

    +

    To start we'll need some data. ... data location ... HadCRUT5 temperature anomaly data. + Description.

    +

    HadCRUT.5 data were obtained from http://www.metoffice.gov.uk/hadobs/hadcrut5 on 27 October 2023 and are © British Crown Copyright, Met Office 2021, provided under an Open Government License, http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/

    +

    This data set has one reading for each month from 1850 to 2023, making 2084 readings. This gives us enough data that working with it will be interesting but not so much that it's overwhelming.

    +

    If we look at the file we see it looks like the following:

    +
    Time,Anomaly (deg C),Lower confidence limit (2.5%),Upper confidence limit (97.5%)
    +1850-01,-0.67456436,-0.98177195,-0.3673568
    +1850-02,-0.333416,-0.700901,0.034069024
    +1850-03,-0.59132266,-0.9339191,-0.2487262
    +1850-04,-0.58872116,-0.8982594,-0.27918297
    +

    This type of file is known as comma separated values (CSV). + Each line, except the first, consists of values, otherwise known as fields. + Each field is separated by a comma. + The first line, the heading, gives names for the fields. + So we can see that the fields are, in order, time, temperature anomaly, and lower and upper confidence bounds on the anomaly.

    +

    If we look at the first line

    +
    1850-01,-0.67456436,-0.98177195,-0.3673568
    +

    we can see that the time is 1850-01, the anomaly -0.67456436, the lower confidence bound -0.98177195, and the upper confidence bound -0.3673568.

    +

    Now we understand the data format, let's see how to load it into Scala. + This will take several stages:

    +
      +
    • we'll first load each line as a Scala String;
    • +
    • we'll then split each line at the commas, turning each line into four values;
    • +
    • we'll then need to ...
    • +
    +

    It seems a lot but we'll take it step-by-step and get there soon enough, and along the way we'll learn lots of interesting Scala programming techniques.

    + +
    + +
    + +
    + + + diff --git a/loading-data/source.html b/loading-data/source.html new file mode 100644 index 00000000..93f6dcd3 --- /dev/null +++ b/loading-data/source.html @@ -0,0 +1,186 @@ + + + + + + + + + Loading Data Using a Source + + + + + + + + + + + + + + + + + + + +
    +
    +

    Loading Data Using a Source

    +

    scala.io.Source

    +

    Source.getLines().toList

    + +
    + +
    + + + + + diff --git a/methods/conclusions.html b/methods/conclusions.html index e0e5950f..fcc235a2 100644 --- a/methods/conclusions.html +++ b/methods/conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/methods/index.html b/methods/index.html index 9c9d96a5..8f98f00d 100644 --- a/methods/index.html +++ b/methods/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/methods/methods.html b/methods/methods.html index 70a99bf0..6868244b 100644 --- a/methods/methods.html +++ b/methods/methods.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/methods/semantics.html b/methods/semantics.html index a9460624..d3b3d006 100644 --- a/methods/semantics.html +++ b/methods/semantics.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/methods/syntax.html b/methods/syntax.html index 577a46e5..8d3ba123 100644 --- a/methods/syntax.html +++ b/methods/syntax.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/methods/writing-methods.html b/methods/writing-methods.html index 6fad6e3e..29c7e8c7 100644 --- a/methods/writing-methods.html +++ b/methods/writing-methods.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/part-one-conclusions.html b/part-one-conclusions.html index ebbff6a5..bec9e611 100644 --- a/part-one-conclusions.html +++ b/part-one-conclusions.html @@ -26,7 +26,7 @@ +

    @@ -189,7 +192,7 @@

    Part One: Conclusions

    Ravi Chugh looks at the intersection of human-computer interaction and programming languages. I find his work really inspiring for imagining a different, yet attainable, way of working with computers. Going further afield, Chris Martens looks at the intersection of programming languages and games.

    If you have decided you can't live without more creative computing in your life, and the above don't slake your thirst, Kadenze is probably the premier source for online courses. For even more creative computing, many universities now offer degree programs in the field. Notable examples are the Creative Computing Institute in London, and the Tisch School of Art in New York City, but there are many others.

    - ←Conclusions Easing Functions→ + ←Conclusions Part Two: Introduction→
    diff --git a/part-one-introduction.html b/part-one-introduction.html index a8c1a273..53d4da06 100644 --- a/part-one-introduction.html +++ b/part-one-introduction.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/part-two-introduction.html b/part-two-introduction.html new file mode 100644 index 00000000..214b6a3d --- /dev/null +++ b/part-two-introduction.html @@ -0,0 +1,195 @@ + + + + + + + + + Part Two: Introduction + + + + + + + + + + + + + + + + + + + +
    +
    +

    Part Two: Introduction

    + +

    Exploratory data analysis + - loading and cleaning data + - Regular expressions + - Source or fs2 data or something else... + - scatter and line plots + -

    + +
    + +
    + + + + + diff --git a/polygons/02-polar.html b/polygons/02-polar.html index f5bd5dcd..a69ca636 100644 --- a/polygons/02-polar.html +++ b/polygons/02-polar.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/polygons/03-path.html b/polygons/03-path.html index 6e79700e..77d58c54 100644 --- a/polygons/03-path.html +++ b/polygons/03-path.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/polygons/04-creative.html b/polygons/04-creative.html index 2cda8f43..327c9a97 100644 --- a/polygons/04-creative.html +++ b/polygons/04-creative.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/polygons/05-conclusions.html b/polygons/05-conclusions.html index 5e973283..3d664b0d 100644 --- a/polygons/05-conclusions.html +++ b/polygons/05-conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/polygons/index.html b/polygons/index.html index ecff4fc9..b02037d1 100644 --- a/polygons/index.html +++ b/polygons/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/programs/abstraction.html b/programs/abstraction.html index b2aee9d8..96f9d5ef 100644 --- a/programs/abstraction.html +++ b/programs/abstraction.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/programs/conclusions.html b/programs/conclusions.html index 591ae212..c6769563 100644 --- a/programs/conclusions.html +++ b/programs/conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/programs/imports.html b/programs/imports.html index be968868..a5d17fe6 100644 --- a/programs/imports.html +++ b/programs/imports.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/programs/index.html b/programs/index.html index e88c34a2..66fa42e8 100644 --- a/programs/index.html +++ b/programs/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/programs/names.html b/programs/names.html index 24f85a29..ccaa105a 100644 --- a/programs/names.html +++ b/programs/names.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/programs/outside-worksheet.html b/programs/outside-worksheet.html index 840bb5b0..ccf7d8a4 100644 --- a/programs/outside-worksheet.html +++ b/programs/outside-worksheet.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/programs/sbt.html b/programs/sbt.html index 3be3dc22..bd9ca416 100644 --- a/programs/sbt.html +++ b/programs/sbt.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/quickreference/index.html b/quickreference/index.html index f818a0b2..4196db66 100644 --- a/quickreference/index.html +++ b/quickreference/index.html @@ -24,9 +24,9 @@ - @@ -372,7 +375,7 @@

    Angles and Vecs

    val a: Angle = Vec(3, 4).angle // counterclockwise from (1, 0) val l: Double = Vec(3, 4).length // length
    - ←Turtle Algebra and Algebraic Data Types + ←Take Home Points Branching Structures→
    diff --git a/recursion/boxes.html b/recursion/boxes.html index 25579565..682d9af8 100644 --- a/recursion/boxes.html +++ b/recursion/boxes.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/recursion/conclusions.html b/recursion/conclusions.html index 029bc717..eab5521e 100644 --- a/recursion/conclusions.html +++ b/recursion/conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/recursion/index.html b/recursion/index.html index 7a5ce6ec..0e1b0ff2 100644 --- a/recursion/index.html +++ b/recursion/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/recursion/match.html b/recursion/match.html index 60483124..2985885c 100644 --- a/recursion/match.html +++ b/recursion/match.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/recursion/natural-numbers.html b/recursion/natural-numbers.html index 6cf12429..b4a9e0e3 100644 --- a/recursion/natural-numbers.html +++ b/recursion/natural-numbers.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/recursion/substitution.html b/recursion/substitution.html index cc4fbc21..0574811f 100644 --- a/recursion/substitution.html +++ b/recursion/substitution.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/sequences/index.html b/sequences/index.html index 1de73900..c9fcd2bb 100644 --- a/sequences/index.html +++ b/sequences/index.html @@ -24,7 +24,7 @@ - @@ -542,7 +545,7 @@

    Polygons! {-}

    val image = makeImage(15)

    </div>

    - ←Shapes, Sequences, and Stars Transforming Sequences→ + ←Shapes, Sequences, and Stars Paths→
    diff --git a/sequences/map.html b/sequences/map.html index d540e6b6..47aeab71 100644 --- a/sequences/map.html +++ b/sequences/map.html @@ -24,9 +24,9 @@ - @@ -414,7 +417,7 @@
    Using Open Intervals {-}
    // res43: List[Int] = List(1, 2, 3)

    </div>

    - ←Working with Lists Solutions to Exercises {#solutions}→ + ←My God, It's Full of Stars! Shapes, Sequences, and Stars→
    diff --git a/sequences/paths.html b/sequences/paths.html index a90472af..34857e49 100644 --- a/sequences/paths.html +++ b/sequences/paths.html @@ -24,9 +24,9 @@ - @@ -380,7 +383,7 @@

    Curves {-}

    val image = style(triangle).beside(spacer).beside(style(square)).beside(spacer).beside(style(pentagon))

    </div>

    - ←Introduction My God, It's Full of Stars!→ + ←Working with Lists Exploring Random→
    diff --git a/sequences/stars.html b/sequences/stars.html index b4511f85..74ad1865 100644 --- a/sequences/stars.html +++ b/sequences/stars.html @@ -24,9 +24,9 @@ - @@ -255,7 +258,7 @@

    My God, It's Full of Stars! })

    </div>

    - ←Paths Shapes, Sequences, and Stars→ + ←Take Home Points Transforming Sequences→
    diff --git a/setup/background.html b/setup/background.html index 05e2f12b..362fab5d 100644 --- a/setup/background.html +++ b/setup/background.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/setup/github.html b/setup/github.html index ba4c5a1d..3c736fba 100644 --- a/setup/github.html +++ b/setup/github.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/setup/index.html b/setup/index.html index 2296707b..47d947d9 100644 --- a/setup/index.html +++ b/setup/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/setup/intellij.html b/setup/intellij.html index 9d9f267c..701f4579 100644 --- a/setup/intellij.html +++ b/setup/intellij.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/setup/terminal.html b/setup/terminal.html index c2ce39f6..aa9d62d9 100644 --- a/setup/terminal.html +++ b/setup/terminal.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/solutions.html b/solutions.html index 0fff3c0a..75df96ab 100644 --- a/solutions.html +++ b/solutions.html @@ -24,9 +24,9 @@ - @@ -171,7 +174,7 @@

    Solutions to Exercises {

    <div class="solutions"> </div>

    - ←Transforming Sequences Case Classes→ + ←Combining Random Values Algebraic Data Types→
    diff --git a/substitution/conclusions.html b/substitution/conclusions.html index f300c5ba..ab85e265 100644 --- a/substitution/conclusions.html +++ b/substitution/conclusions.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/substitution/index.html b/substitution/index.html index 762b277d..ccafc786 100644 --- a/substitution/index.html +++ b/substitution/index.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/substitution/local-reasoning.html b/substitution/local-reasoning.html index b2e2f616..052048aa 100644 --- a/substitution/local-reasoning.html +++ b/substitution/local-reasoning.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/substitution/order.html b/substitution/order.html index 3297a559..df3ab48d 100644 --- a/substitution/order.html +++ b/substitution/order.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/substitution/substitution.html b/substitution/substitution.html index 425db5bd..4b569499 100644 --- a/substitution/substitution.html +++ b/substitution/substitution.html @@ -106,62 +106,65 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - - - + + + + + + - - - - - - - - - - - + + + + - - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + diff --git a/summary/index.html b/summary/index.html index 131cf65c..5a612145 100644 --- a/summary/index.html +++ b/summary/index.html @@ -24,9 +24,9 @@ - @@ -366,7 +369,7 @@

    Next Steps

    Suburban Scene (Street.scala)

    Mandelbrot Fractal by Mat Moore (Mandelbrot.scala)

    - ←Declarations Recursive Algorithms→ + ←Introduction Value Declarations→
    diff --git a/turtles/branching.html b/turtles/branching.html index ba157aea..5ee23e08 100644 --- a/turtles/branching.html +++ b/turtles/branching.html @@ -24,9 +24,9 @@ - @@ -334,7 +337,7 @@

    Plants and Other Creations {

    Five iterations of the simple branching L-system.

    Five iterations of the Koch curve, a fractal that is simple to create with an L-System.

    - ←Creating and Working With Data Exercises→ + ←Syntax Quick Reference {#syntax-quick-reference} Turtle Algebra and Algebraic Data Types→
    diff --git a/turtles/exercises.html b/turtles/exercises.html index fd7c2ffd..b3641356 100644 --- a/turtles/exercises.html +++ b/turtles/exercises.html @@ -24,7 +24,7 @@ - @@ -272,7 +275,7 @@

    Turtles vs Polar Coordinat Using map we cannot change the number of elements in a list. Therefore mapping 1 to n, as we did int the code above, won't work. We could map over 1 to (n*2), and on, say, odd numbers move forward and on even numbers turn, but this is rather inelegant. It seems it would be simpler if we had an abstraction like map that allowed us to change the number of elements in the list as well as transform the individual elements. </div>

    - ←Exercises Turtle Algebra and Algebraic Data Types→ + ←Exercises Easing Functions→