Processamento incremental em um ator akka

Eu tenho atores que precisam fazer um trabalho muito longo e computacionalmente caro, mas a computação em si pode ser feita de forma incremental. Assim, enquanto o próprio cálculo completo leva horas para ser concluído, os resultados intermediários são extremamente úteis, e eu gostaria de poder responder a qualquer solicitação deles. Este é o pseudo código do que eu quero fazer:

var intermediateResult = ...
loop {
     while (mailbox.isEmpty && computationNotFinished)
       intermediateResult = computationStep(intermediateResult)


     receive {
         case GetCurrentResult => sender ! intermediateResult
         ...other messages...
     }
 }

questionAnswers(4)

yourAnswerToTheQuestion