Scala - Como compilar código de um arquivo externo em tempo de execução?

Quero criar um programa Scala que aceite arquivos Scala como parâmetros que podem personalizar a execução do programa. Em particular, desejo fornecer em tempo de execução arquivos que contenham implementações de métodos que serão invocados pelo programa. Como posso depender adequadamente de arquivos externos e invocar seus métodos dinamicamente em tempo de execução? Idealmente, eu também gostaria que esses arquivos pudessem depender de métodos e classes no meu programa.

Cenário de exemplo: Eu tenho uma função que contém a linhaval p: Plant = Greenhouse.getPlant(), e asGreenhouse aula com ogetPlant O método é definido em um dos arquivos que serão fornecidos no tempo de execução. Nesse arquivo, o métodogetPlant retorna umRose, OndeRose <: Plant ePlant é definido no programa original. Como faço para alcançar (ou aproximar) essa interdependência, assumindo que os arquivos sejam unidos apenas no tempo de execução e não no tempo de compilação?

questionAnswers(2)

yourAnswerToTheQuestion