Earlier quoted context omitted.
The only problem here is using the term "reference" for reference variables. If you would say "these are pointers to objects, but you can't actually do any pointer arithmetic", this would be a non-issue. The pass by value is not the problem here.
C and Pascal and even C++ have a very simple model. An address of a variable is a pointer. You can actually understand how memory is layed out on hardware and why you would want to pass references or pointers instead of copying very large data structures.
I understand why (now), but at the time, it just added unnecessary cognitive load on top of already learning hardware models.
C and Pascal require fewer exceptions, despite a larger base knowledge requirement.