Вообще говоря, объект может быть вызван без функции. В языке, где все является объектом (включая функции), вызываемые объекты не должны происходить из класса Function.
В JS похоже, что Callable - это все, что имеет внутренний метод [[Call]] (идентифицируется typeof «function», а не «object»). Функция (как используется на слайде) является потомком объекта Function. Я могу ошибаться, но внутри скрипта вы можете создавать только функции, в то время как реализация ECMAScript может определять функции, которые не являются функциями.
Если вы попробуете фрагмент кода со слайда как с анонимными функциями / выражениями функций, так и с объявленными функциями, результаты будут одинаковыми.
typeof function() {}; // == 'function'
({}).toString.call(function() {}) // == '[object Function]'
function foo() {}
typeof foo; // == 'function'
({}).toString.call(foo) // == '[object Function]'