<html><head></head><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97393" class="">@Brent Royal-Gordon</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97395" class="">The code below is with different spacing for = and : so it should look more distinguishable and familiar.</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97397" class="">I'm not sure what you mean by heavier and lighter.</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97399" class="">I've never looked at the statement&nbsp;</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97401" class="">var a = 7</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97403" class="">and wished I could use a lighter : instead of the =</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97405" class="">(did I understand you correctly on this point?)</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97407" class="">inout parameters are not rare in my code. I'd say they are about as common as only in parameters,</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97409" class="">and even then, the vast majority of my functions have them.&nbsp;</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97411" class=""><br id="yui_3_16_0_1_1455052779955_97413" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97415" class=""><br id="yui_3_16_0_1_1455052779955_97417" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97419" class=""><br id="yui_3_16_0_1_1455052779955_97421" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97423" class=""><br id="yui_3_16_0_1_1455052779955_97425" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97427" class="">//main body code:</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97429" class=""><br id="yui_3_16_0_1_1455052779955_97431" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97433" class="">expandFibonacciSequence(inArray: fibonacciArray, by = 100)</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97435" class=""><br id="yui_3_16_0_1_1455052779955_97437" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97439" class="">combine(transform = localTransform, withTransform = parentTransform, toOutput: globalTransform)&nbsp;</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97441" class=""><br id="yui_3_16_0_1_1455052779955_97443" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97445" class="">addNoise(toColours: colourArray, withMaxRandomFactor = 0.05, outputColours: noisyColourArray)</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97447" class=""><br id="yui_3_16_0_1_1455052779955_97449" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97451" class=""><br id="yui_3_16_0_1_1455052779955_97453" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97455" class=""><br id="yui_3_16_0_1_1455052779955_97457" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97459" class=""><br id="yui_3_16_0_1_1455052779955_97461" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97463" class="">//the corresponding function declarations:</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97465" class=""><br id="yui_3_16_0_1_1455052779955_97467" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97469" class="">expandFibonacciSequence(inArray numberArray: [Ints], by maxAdditions = Int) {</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97471" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97473">        </span>var inCount = numberArray.count</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97475" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97477">        </span></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97479" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97481">        </span>for addIndex in 0…(maxAdditions - 1) {</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97483" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97485">                </span>numberArray[inCount + addIndex] = numberArray[inCount + addIndex - 1] + numberArray[inCount + addIndex - 2]</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97487" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97489">        </span>}</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97491" class="">}</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97493" class=""><br id="yui_3_16_0_1_1455052779955_97495" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97497" class=""><br id="yui_3_16_0_1_1455052779955_97499" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97501" class="">addNoise(toColours originalColours: [Double], withMaxRandomFactor maxFactor = 0.05, outputColours newColours: [Double]) {</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97503" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97505">        </span>//the originalColours array is passed by reference (associated variable) to keep memory usage low.</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97507" class=""><br id="yui_3_16_0_1_1455052779955_97509" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97511" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97513">        </span>let numOfColours = originalColours.count</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97515" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97517">        </span>for index in 0…numOfColours {</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97519" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97521">                </span>let randomNumber = drand48() * maxFactor - maxFactor/2</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97523" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97525">                </span>newColours[index] = originalColours[index] + randomNumber</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97527" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97529">        </span>}</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97531" class="">}</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97533" class=""><br id="yui_3_16_0_1_1455052779955_97535" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97537" class=""><br id="yui_3_16_0_1_1455052779955_97539" class=""></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97541" class="">combine(transform localMatrix = [double], withTransform parentMatrix = [double], toOutput outputMatrix: [double]) {</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97543" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97545">        </span></div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97547" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97549">        </span>outputMatrix[0] = localMatrix[0] * parentMatrix[0] + localMatrix[1] * parentMatrix[4] + localMatrix[2] * parentMatrix[8] + localMatrix[3] * parentMatrix[12]&nbsp;</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97551" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97553">        </span>outputMatrix[1] = localMatrix[0] * parentMatrix[1] + localMatrix[1] * parentMatrix[5] + localMatrix[2] * parentMatrix[9] + localMatrix[3] * parentMatrix[13]&nbsp;</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97555" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97557">        </span>//outputMatrix[2] ...</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97559" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97561">        </span>//outputMatrix[3] …</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97563" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97565">        </span>//outputMatrix[4] ...</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" id="yui_3_16_0_1_1455052779955_97567" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97569">        </span>//and so on</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica; min-height: 14px;" id="yui_3_16_0_1_1455052779955_97571" class=""><span class="" style="white-space:pre-wrap;" id="yui_3_16_0_1_1455052779955_97573">        </span></div><div>






















































</div><div style="margin-top: 0px; margin-bottom: 0px; font-size: 12px; font-family: Helvetica;" dir="ltr" id="yui_3_16_0_1_1455052779955_97575" class="">}</div> <div class="qtdSeparateBR" id="yui_3_16_0_1_1455052779955_97665"><br><br></div></div></body></html>