Skip to content

Commit 85c8559

Browse files
committed
deploy: e7307c1
1 parent d281340 commit 85c8559

File tree

8 files changed

+36
-33
lines changed

8 files changed

+36
-33
lines changed

animation/easing.html

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -177,12 +177,12 @@ <h1 id="easing-functions" class="title">Easing Functions</h1>
177177
.</span><span class="identifier">withRender</span><span>(</span><span class="identifier">r</span><span> =&gt; </span><span class="type-name">Image</span><span>.</span><span class="identifier">circle</span><span>(</span><span class="identifier">r</span><span>))
178178
</span><span class="comment">// bubble: Reactor[Double] = Reactor(
179179
// initial = 0.0,
180-
// onMouseClickHandler = doodle.reactor.Reactor$$$Lambda$15797/0x0000000103fbc840@4494e5a2,
181-
// onMouseMoveHandler = doodle.reactor.Reactor$$$Lambda$15798/0x0000000103fbd840@329037f6,
182-
// onTickHandler = doodle.reactor.Reactor$$$Lambda$15802/0x0000000103fc8840@1f416d11,
180+
// onMouseClickHandler = doodle.reactor.Reactor$$$Lambda$14329/0x0000000103bb1840@54e4d7ca,
181+
// onMouseMoveHandler = doodle.reactor.Reactor$$$Lambda$14330/0x0000000103bb2040@6044b316,
182+
// onTickHandler = doodle.reactor.Reactor$$$Lambda$14334/0x0000000103bb7040@6bdbb684,
183183
// tickRate = 100 milliseconds,
184-
// renderHandler = repl.MdocSession$MdocApp$$Lambda$15804/0x0000000103fca840@22c8374b,
185-
// stopHandler = doodle.reactor.Reactor$$$Lambda$15803/0x0000000103fc9840@12ea6200
184+
// renderHandler = repl.MdocSession$MdocApp$$Lambda$14336/0x0000000103bb5840@3b146b83,
185+
// stopHandler = doodle.reactor.Reactor$$$Lambda$14335/0x0000000103bb6040@397f2d9d
186186
// )</span></code></pre>
187187
<div class="flex flex-row justify-between">
188188
<a class="pageNavigation" href="index.html">←Animation and Fireworks</a> <a class="pageNavigation" href="../adt/">Algebraic Data Types To Call Our Own→</a>

flowers/functions.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -355,17 +355,17 @@ <h4 id="exercise-function-literals">Exercise: Function Literals</h4>
355355
<div class="solution-body">
356356
<p>The first function is</p>
357357
<pre><code class="nohighlight"><span>(</span><span class="identifier">x</span><span>: </span><span class="type-name">Int</span><span>) =&gt; </span><span class="identifier">x</span><span> * </span><span class="identifier">x</span><span>
358-
</span><span class="comment">// res10: Function1[Int, Int] = repl.MdocSession$MdocApp0$$Lambda$16125/0x00000001040d4840@3def2f88</span></code></pre>
358+
</span><span class="comment">// res10: Function1[Int, Int] = repl.MdocSession$MdocApp0$$Lambda$14657/0x0000000103cd8840@243d49fd</span></code></pre>
359359
<p>The second is</p>
360360
<pre><code class="nohighlight"><span>(</span><span class="identifier">c</span><span>: </span><span class="type-name">Color</span><span>) =&gt; </span><span class="identifier">c</span><span>.</span><span class="identifier">spin</span><span>(</span><span class="number-literal">15</span><span>.</span><span class="identifier">degrees</span><span>)
361-
</span><span class="comment">// res11: Function1[Color, HSLA] = repl.MdocSession$MdocApp0$$Lambda$16126/0x00000001040d5840@5418ece7</span></code></pre>
361+
</span><span class="comment">// res11: Function1[Color, HSLA] = repl.MdocSession$MdocApp0$$Lambda$14658/0x0000000103cd9040@64b8464c</span></code></pre>
362362
<p>The third is</p>
363363
<pre><code class="nohighlight"><span>(</span><span class="identifier">image</span><span>: </span><span class="type-name">Image</span><span>) =&gt;
364364
</span><span class="identifier">image</span><span>.</span><span class="identifier">beside</span><span>(</span><span class="identifier">image</span><span>.</span><span class="identifier">rotate</span><span>(</span><span class="number-literal">90</span><span>.</span><span class="identifier">degrees</span><span>))
365365
.</span><span class="identifier">beside</span><span>(</span><span class="identifier">image</span><span>.</span><span class="identifier">rotate</span><span>(</span><span class="number-literal">180</span><span>.</span><span class="identifier">degrees</span><span>))
366366
.</span><span class="identifier">beside</span><span>(</span><span class="identifier">image</span><span>.</span><span class="identifier">rotate</span><span>(</span><span class="number-literal">270</span><span>.</span><span class="identifier">degrees</span><span>))
367367
.</span><span class="identifier">beside</span><span>(</span><span class="identifier">image</span><span>.</span><span class="identifier">rotate</span><span>(</span><span class="number-literal">360</span><span>.</span><span class="identifier">degrees</span><span>))
368-
</span><span class="comment">// res12: Function1[Image, Image] = repl.MdocSession$MdocApp0$$Lambda$16127/0x00000001040d6040@78d79b8</span></code></pre>
368+
</span><span class="comment">// res12: Function1[Image, Image] = repl.MdocSession$MdocApp0$$Lambda$14659/0x0000000103cda040@2b499d1e</span></code></pre>
369369
</div>
370370
</div>
371371
<div class="exercise">

foreword-2.html

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,10 @@ <h1 id="foreword-to-the-second-edition" class="title">Foreword to the Second Edi
195195
<p>One more thing: the name may change as well! I&#39;m not sure Creative Scala fits the book I&#39;m aiming for.</p>
196196

197197
<h2 id="acknowledgements" class="section">Acknowledgements</h2>
198-
<p>The members of ScalaBridge London </p>
198+
<p>The members of ScalaBridge London, with particular mention to the following for reporting bugs and suggesting improvements:</p>
199+
<ul>
200+
<li>Jess Gordon</li>
201+
</ul>
199202
<div class="flex flex-row justify-between">
200203
<a class="pageNavigation" href="foreword-1.html">←Foreword to the First Edition</a> <a class="pageNavigation" href="setup/">Getting Started→</a>
201204
</div>

generative/flatmap.html

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -364,15 +364,15 @@ <h4 id="randomness-and-randomness" class="section">Randomness and Randomness {-}
364364
// c = FlatMapped(
365365
// c = FlatMapped(
366366
// c = Suspend(a = RDouble),
367-
// f = cats.free.Free$$Lambda$16188/0x00000001040fc040@db49686
367+
// f = cats.free.Free$$Lambda$14720/0x0000000103cee040@39ab6f01
368368
// ),
369-
// f = cats.free.Free$$Lambda$16188/0x00000001040fc040@36239c6d
369+
// f = cats.free.Free$$Lambda$14720/0x0000000103cee040@62865eb0
370370
// ),
371-
// f = cats.free.Free$$Lambda$16188/0x00000001040fc040@4101806c
371+
// f = cats.free.Free$$Lambda$14720/0x0000000103cee040@28068328
372372
// ),
373-
// f = repl.MdocSession$MdocApp5$$Lambda$16205/0x0000000104105040@2ef9cf40
373+
// f = repl.MdocSession$MdocApp5$$Lambda$14737/0x0000000103cfd040@657c6310
374374
// ),
375-
// f = repl.MdocSession$MdocApp5$$Lambda$16208/0x0000000104102840@7d07cbf
375+
// f = repl.MdocSession$MdocApp5$$Lambda$14740/0x0000000103d09040@7cddbd9
376376
// )</span></code></pre>
377377
<p>which makes it clearer that we&#39;re generating three different circles.
378378
&lt;/div&gt;</p>
@@ -393,17 +393,17 @@ <h4 id="colored-boxes" class="section">Colored Boxes {-}</h4>
393393
</span><span class="type-name">Random</span><span>.</span><span class="identifier">double</span><span>.</span><span class="identifier">map</span><span>(</span><span class="identifier">x</span><span> =&gt; </span><span class="identifier">x</span><span>.</span><span class="identifier">turns</span><span>)
394394
</span><span class="comment">// randomAngle: Free[[A &gt;: Nothing &lt;: Any] =&gt; RandomOp[A], Angle] = FlatMapped(
395395
// c = Suspend(a = RDouble),
396-
// f = cats.free.Free$$Lambda$16188/0x00000001040fc040@2dba58dc
396+
// f = cats.free.Free$$Lambda$14720/0x0000000103cee040@57ee764e
397397
// )
398398
</span><span>
399399
</span><span class="keyword">val</span><span> </span><span class="identifier">randomColor</span><span>: </span><span class="type-name">Random</span><span>[</span><span class="type-name">Color</span><span>] =
400400
</span><span class="identifier">randomAngle</span><span>.</span><span class="identifier">map</span><span>(</span><span class="identifier">hue</span><span> =&gt; </span><span class="type-name">Color</span><span>.</span><span class="identifier">hsl</span><span>(</span><span class="identifier">hue</span><span>, </span><span class="number-literal">0.7</span><span>, </span><span class="number-literal">0.7</span><span>))
401401
</span><span class="comment">// randomColor: Free[[A &gt;: Nothing &lt;: Any] =&gt; RandomOp[A], Color] = FlatMapped(
402402
// c = FlatMapped(
403403
// c = Suspend(a = RDouble),
404-
// f = cats.free.Free$$Lambda$16188/0x00000001040fc040@2dba58dc
404+
// f = cats.free.Free$$Lambda$14720/0x0000000103cee040@57ee764e
405405
// ),
406-
// f = cats.free.Free$$Lambda$16188/0x00000001040fc040@6075bfe7
406+
// f = cats.free.Free$$Lambda$14720/0x0000000103cee040@4beda058
407407
// )
408408
</span><span>
409409
</span><span class="keyword">def</span><span> </span><span class="declaration-name">coloredRectangle</span><span>(</span><span class="identifier">color</span><span>: </span><span class="type-name">Color</span><span>): </span><span class="type-name">Image</span><span> =

generative/generative.html

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -200,29 +200,29 @@ <h1 id="generative-art" class="title">Generative Art</h1>
200200
</tbody>
201201
</table>
202202
<pre><code class="nohighlight"><span class="identifier">math</span><span>.</span><span class="identifier">random</span><span>
203-
</span><span class="comment">// res0: Double = 0.3763503668137944
203+
</span><span class="comment">// res0: Double = 0.15820054643198922
204204
</span><span class="identifier">math</span><span>.</span><span class="identifier">random</span><span>
205-
</span><span class="comment">// res1: Double = 0.9996983033211917</span></code></pre>
205+
</span><span class="comment">// res1: Double = 0.6540477237078933</span></code></pre>
206206
<p>Given <code>math.random</code> we could produce a method that returns a random <code>Angle</code> like so.</p>
207207
<pre><code class="nohighlight"><span class="keyword">def</span><span> </span><span class="declaration-name">randomAngle</span><span>: </span><span class="type-name">Angle</span><span> =
208208
</span><span class="identifier">math</span><span>.</span><span class="identifier">random</span><span>.</span><span class="identifier">turns</span><span>
209209

210210
</span><span class="identifier">randomAngle</span><span>
211-
</span><span class="comment">// res2: Angle = Angle(3.5257863172154527)
211+
</span><span class="comment">// res2: Angle = Angle(1.5234966553904867)
212212
</span><span class="identifier">randomAngle</span><span>
213-
</span><span class="comment">// res3: Angle = Angle(2.2293765218935695)</span></code></pre>
213+
</span><span class="comment">// res3: Angle = Angle(2.0441351164399384)</span></code></pre>
214214
<p>Why might we not want to do this? What principle does this break?</p>
215215
<p>&lt;div class=&quot;solution&quot;&gt;
216216
Generating random numbers in this way breaks substitution. Remember substitution says wherever we see an expression we should be able to substitute the value it evaluates to without changing the meaning of the program. Concretely, this means</p>
217217
<pre><code class="nohighlight"><span class="keyword">val</span><span> </span><span class="identifier">result1</span><span> = </span><span class="identifier">randomAngle</span><span>
218-
</span><span class="comment">// result1: Angle = Angle(1.2845734304109409)
218+
</span><span class="comment">// result1: Angle = Angle(2.5716594542965683)
219219
</span><span class="keyword">val</span><span> </span><span class="identifier">result2</span><span> = </span><span class="identifier">randomAngle</span><span>
220-
</span><span class="comment">// result2: Angle = Angle(0.37820568068132854)</span></code></pre>
220+
</span><span class="comment">// result2: Angle = Angle(3.3051764809816437)</span></code></pre>
221221
<p>and </p>
222222
<pre><code class="nohighlight"><span class="keyword">val</span><span> </span><span class="identifier">result1</span><span> = </span><span class="identifier">randomAngle</span><span>
223-
</span><span class="comment">// result1: Angle = Angle(4.179152441677217)
223+
</span><span class="comment">// result1: Angle = Angle(1.7680748308072984)
224224
</span><span class="keyword">val</span><span> </span><span class="identifier">result2</span><span> = </span><span class="identifier">result1</span><span>
225-
</span><span class="comment">// result2: Angle = Angle(4.179152441677217)</span></code></pre>
225+
</span><span class="comment">// result2: Angle = Angle(1.7680748308072984)</span></code></pre>
226226
<p>should be the same program and clearly they are not.
227227
&lt;/div&gt;</p>
228228
<p>What should we do? Suffer the slings and arrows of outrageous computational models, or take arms against a sea of side-effects, and by opposing end them! There&#39;s really only one choice.</p>

generative/random.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ <h1 id="randomness-without-effect" class="title">Randomness without Effect</h1>
185185
// )</span></code></pre>
186186
<p>No random numbers are actually created until we call the <code>run</code> method.</p>
187187
<pre><code class="nohighlight"><span class="identifier">randomDouble</span><span>.</span><span class="identifier">run</span><span>
188-
</span><span class="comment">// res0: Double = 0.4466396033751239</span></code></pre>
188+
</span><span class="comment">// res0: Double = 0.4613818598813554</span></code></pre>
189189
<p>The type <code>Random[Double]</code> indicates we have something that will produce a random <code>Double</code> when we <code>run</code> it. Just like with <code>Image</code> and <code>draw</code>, substitution holds with <code>Random</code> up until the point we call <code>run</code>.</p>
190190
<p>Table Table generative:random shows some of the ways to construct <code>Random</code> values.</p>
191191
<hr>
@@ -223,9 +223,9 @@ <h3 id="composing-random" class="section">Composing Random</h3>
223223
</span><span class="type-name">Random</span><span>.</span><span class="identifier">double</span><span>.</span><span class="identifier">map</span><span>(</span><span class="identifier">x</span><span> =&gt; </span><span class="identifier">x</span><span>.</span><span class="identifier">turns</span><span>)</span></code></pre>
224224
<p>When we <code>run</code> <code>RandomAngle</code> we can generate randomly created <code>Angle</code></p>
225225
<pre><code class="nohighlight"><span class="identifier">randomAngle</span><span>.</span><span class="identifier">run</span><span>
226-
</span><span class="comment">// res1: Angle = Angle(3.585828190507099)
226+
</span><span class="comment">// res1: Angle = Angle(2.3869408809794046)
227227
</span><span class="identifier">randomAngle</span><span>.</span><span class="identifier">run</span><span>
228-
</span><span class="comment">// res2: Angle = Angle(4.046321669369071)</span></code></pre>
228+
</span><span class="comment">// res2: Angle = Angle(1.2613370409296354)</span></code></pre>
229229

230230
<h3 id="exercises" class="section">Exercises {-}</h3>
231231

main.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6234,14 +6234,14 @@ $c_Lflowers_FlowersFun$.prototype.growingCirclesExample__T__V = (function(id) {
62346234
var image$2 = this.fold__I__F2__Ldoodle_image_Image(5, growingCircles);
62356235
new $c_Ldoodle_image_syntax_AbstractImageSyntax$ImageOps(this$14, image$2).drawWithFrame__O__Ldoodle_effect_Renderer__Lcats_effect_unsafe_IORuntime__V($n($m_Ldoodle_svg_package$().Ldoodle_svg_package$__f_Frame).apply__T__Ldoodle_svg_effect_Frame(id), $m_Ldoodle_svg_package$().Ldoodle_svg_package$__f_svgRenderer, $m_Lcats_effect_unsafe_IORuntime$().global__Lcats_effect_unsafe_IORuntime())
62366236
});
6237-
$c_Lflowers_FlowersFun$.prototype.gradientBoxesExample = (function(arg) {
6238-
var prep0 = $as_T(arg);
6239-
this.gradientBoxesExample__T__V(prep0)
6240-
});
62416237
$c_Lflowers_FlowersFun$.prototype.growingCirclesExample = (function(arg) {
62426238
var prep0 = $as_T(arg);
62436239
this.growingCirclesExample__T__V(prep0)
62446240
});
6241+
$c_Lflowers_FlowersFun$.prototype.gradientBoxesExample = (function(arg) {
6242+
var prep0 = $as_T(arg);
6243+
this.gradientBoxesExample__T__V(prep0)
6244+
});
62456245
var $d_Lflowers_FlowersFun$ = new $TypeData().initClass({
62466246
Lflowers_FlowersFun$: 0
62476247
}, false, "flowers.FlowersFun$", {

main.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)