Hello,
About #valueWithInterval: and co,
I added that in Pharo because they are present in javascript with the same name and I think they were very convenient to easily implement UI animation.
According to the number of discussion about these 2 methods, I think they are useful, but we should rethink the API and the naming. For example one cannot set the Process priority for these methods and it's by default set to background priority which is not very good.
A usecase is:
process := [myAnimation run] valueWithInterval: 1 second.
[ ... ]
process terminate.
In pharo we use 'Delay wait' so #evaluateEveryMilliseconds: instead of #evaluateEvery: 100 ms does not really make sense to me. Am I missing something there ?
What about #evaluateEvery:processPriority: and #evaluateEvery: that sets a default priority ?
#valueAfterWaiting: is named valueWithTimeout: in javascript. What about #evaluateLater: and #evaluateLater:priority: