Hello,<div><br></div><div>Disclaimer: I am new to Racket, so please forgive the ignorance. </div><div><br></div><div>Questions:</div><div>1) As a functional language, when Racket implemented classes did it do so with a different perspective or design philosophy than procedural languages that made a similar transition? In other words, what is the correct, Rackety way to think about and to use classes?</div>
<div><br></div><div>2) Reading through the documentation it seems that there are three different ways to update fields:</div><div><br></div><div>Way 1:</div><div><table cellspacing="0" class="RktBlk" style="white-space:inherit;text-align:left;font-family:serif;background-color:rgb(255,255,255)">
<tbody><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._class))" class="RktStxLink" style="text-decoration:none;color:black">class</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(def._((lib._racket/private/class-internal..rkt)._object~25))" class="RktValLink" style="text-decoration:none;color:blue">object%</a></span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._init))" class="RktStxLink" style="text-decoration:none;color:black">init</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">size</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="hspace" style="font-family:monospace"> </span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)">;</span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)"> </span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)">initialization argument</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span></td></tr><tr style="white-space:inherit">
<td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" style="text-decoration:none;color:black">define</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">current-size</span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">size</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="hspace" style="font-family:monospace"> </span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)">;</span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)"> </span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)">field</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span></td></tr><tr style="white-space:inherit">
<td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/objcreation.html#(form._((lib._racket/private/class-internal..rkt)._super-new))" class="RktStxLink" style="text-decoration:none;color:black">super-new</a></span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="hspace" style="font-family:monospace"> </span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)">;</span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)"> </span><span class="RktCmt" style="font-family:monospace;white-space:inherit;color:rgb(194,116,31)">superclass initialization</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span></td></tr><tr style="white-space:inherit">
<td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._define/public))" class="RktStxLink" style="text-decoration:none;color:black">define/public</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">get-size</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">current-size</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span></td></tr><tr style="white-space:inherit">
<td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._define/public))" class="RktStxLink" style="text-decoration:none;color:black">define/public</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">grow</span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">amt</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/set_.html#(form._((quote._~23~25kernel)._set!))" class="RktStxLink" style="text-decoration:none;color:black">set!</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">current-size</span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/generic-numbers.html#(def._((quote._~23~25kernel)._+))" class="RktValLink" style="text-decoration:none;color:blue">+</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">amt</span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">current-size</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span></td></tr><tr style="white-space:inherit">
<td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._define/public))" class="RktStxLink" style="text-decoration:none;color:black">define/public</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">eat</span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">other-fish</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">grow</span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/ivaraccess.html#(form._((lib._racket/private/class-internal..rkt)._send))" class="RktStxLink" style="text-decoration:none;color:black">send</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">other-fish</span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">get-size</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)<br>
<br></span></td></tr></tbody></table></div><div><br></div><div>Way 2:</div><div><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" style="text-decoration:none;color:black">define</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">account%</span><span class="hspace" style="font-family:monospace"> </span></div>
<div><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._class))" class="RktStxLink" style="text-decoration:none;color:black">class</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(def._((lib._racket/private/class-internal..rkt)._object~25))" class="RktValLink" style="text-decoration:none;color:blue">object%</a></span><span class="hspace" style="font-family:monospace"> </span></div>
<div><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/objcreation.html#(form._((lib._racket/private/class-internal..rkt)._super-new))" class="RktStxLink" style="text-decoration:none;color:black">super-new</a></span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="hspace" style="font-family:monospace"> </span></div>
<div><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._init-field))" class="RktStxLink" style="text-decoration:none;color:black">init-field</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">balance</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="hspace" style="font-family:monospace"> </span></div>
<div><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._define/public))" class="RktStxLink" style="text-decoration:none;color:black">define/public</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">add</span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">n</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="hspace" style="font-family:monospace"> </span></div>
<div><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/objcreation.html#(form._((lib._racket/private/class-internal..rkt)._new))" class="RktStxLink" style="text-decoration:none;color:black">new</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._this~25))" class="RktStxLink" style="text-decoration:none;color:black">this%</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">[</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">balance</span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/generic-numbers.html#(def._((quote._~23~25kernel)._+))" class="RktValLink" style="text-decoration:none;color:blue">+</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">n</span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">balance</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">]</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></div>
<div><br></div><div><br></div><div>Way 3:</div><div><table cellspacing="0" class="RktBlk" style="white-space:inherit;text-align:left;font-family:serif;background-color:rgb(255,255,255)"><tbody><tr style="white-space:inherit">
<td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" style="text-decoration:none;color:black">define</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">savings%</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._class))" class="RktStxLink" style="text-decoration:none;color:black">class</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">account%</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/objcreation.html#(form._((lib._racket/private/class-internal..rkt)._super-new))" class="RktStxLink" style="text-decoration:none;color:black">super-new</a></span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._inherit-field))" class="RktStxLink" style="text-decoration:none;color:black">inherit-field</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">balance</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/define.html#(form._((lib._racket/private/base..rkt)._define))" class="RktStxLink" style="text-decoration:none;color:black">define</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">interest</span><span class="hspace" style="font-family:monospace"> </span><span class="RktVal" style="font-family:monospace;white-space:inherit;color:rgb(34,139,34)">0.04</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._define/public))" class="RktStxLink" style="text-decoration:none;color:black">define/public</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">add-interest</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr><tr style="white-space:inherit"><td style="padding-left:0px;padding-right:0px;vertical-align:baseline;white-space:inherit"><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/ivaraccess.html#(form._((lib._racket/private/class-internal..rkt)._send))" class="RktStxLink" style="text-decoration:none;color:black">send</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/createclass.html#(form._((lib._racket/private/class-internal..rkt)._this))" class="RktStxLink" style="text-decoration:none;color:black">this</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">add</span><span class="hspace" style="font-family:monospace"> </span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">(</span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)"><a href="http://docs.racket-lang.org/reference/generic-numbers.html#(def._((quote._~23~25kernel)._*))" class="RktValLink" style="text-decoration:none;color:blue">*</a></span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">interest</span><span class="hspace" style="font-family:monospace"> </span><span class="RktSym" style="font-family:monospace;white-space:inherit;color:rgb(38,38,128)">balance</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span><span class="RktPn" style="font-family:monospace;white-space:inherit;color:rgb(132,60,36)">)</span></td>
</tr></tbody></table><br></div><div>How do these approaches differ? And when should I use one over the other?</div><div><br></div><div>Many Thanks,</div><div>Hillary Ryan</div><div><br></div>