Roelof, One technique to eliminating the use of #ifTrue:ifFalse: is to use double dispatching. There are some good examples of using double dispatching in Ralph Johnson's paper "ARITHMETIC AND DOUBLE DISPATCHING IN SMALLTALK-80"[1]. you should be able to get the basic idea by skimming the smalltalk code examples. I used double dispatching fairly extensively in Metacello ... In practice you may not eliminate all use of #ifTrue:ifFalse:, but double dispatching works quite well in places where you are tempted to do type checking... Dale [1] https://www.researchgate.net/publication/239578755_Arithmetic_and_double-_di... On 11/27/18 8:40 AM, Roelof Wobben wrote:
Hello,
Yesterday I had a talk with luc frabresse about using if then. He said if I understand it right, Its the best to not using a if then or a ifTrue/ifFalse.
Can anyone help me figure out how to rewrite this project so I will not use the ifTrue in the basement function.
my code so far can be found here : https://github.com/RoelofWobben/AOC2015
Roelof