I propose to introduce the method `evaluate` that will returns the loss value for the trained model: ```fortran function evaluate(input_data, output_data, loss) result(res) real, intent(in) :: input_data(:,:) real, intent(in) :: output_data(:,:) class(loss_type), intent(in), optional :: loss real :: res(size(output_data, 1)) end function