Scala Generics и числовые последствия

Мне нужно передать две функции в качестве параметров функции Scala. Эта функция должна затем оценить их и получить число от них, где она затем будет работать. Это число может быть Int, Double или любым другим числовым типом. Я бы хотел, чтобы функция работала независимо от того, с какими типами она работает.

Пример ниже объясняет проблему.

import Numeric.Implicits._

class Arithmetic[T : Numeric](val A: Connector[T], val B: Connector[T]) {
  val sum  = new Connector({ A.value + B.value })
}

class Constant[T](var x: T) {
  val value = new Connector({ x })
}

class Connector[T](f: => T) {
  def value: T = f
  override def toString = value.toString()
}

object Main extends App{
  val n1 = new Constant(1)

  // works
  val n5 = new Constant(5)
  val a = new Arithmetic( n1.value, n5.value )
  println(a.sum)

 // no works
 val n55 = new Constant(5.5)
 val b = new Arithmetic( n1.value, n55.value )
 println(b.sum)

}

Я также пытался

class Arithmetic[T,R : Numeric](val A: Connector[T], val B: Connector[R]) {

и несколько других комбинаций, но я закончил с

error: could not find implicit value for parameter num: scala.math.Numeric[Any]
val sum  = new Connector({ A.value + B.value })

Ответы на вопрос(1)

Ваш ответ на вопрос