Why is "sum A" not the same as "sum(A)" in MATLAB?

matlab

Solution

If you call a function like

sum A

Matlab interprets the second as a string and passes it as the first argument to the function like:

sum('A')

And the output 65 comes from 65 being the integer representation of 'A'

This is quite neat with the large number of functions taking strings as input, like `cd` Instead of

cd('somedirectory/')

you can write

cd somedirectory/

This is referred command syntax and functions called like this cannot have outputs

Here is a link with some additional details: (http://www.mathworks.se/help/matlab/matlab_prog/command-vs-function-syntax.html)

Problem

Why is it that `sum A` is not the same as `sum(A)` in MATLAB? ``` >> A A = 1 2 3 4 >> sum A ans = 65 >> sum(A) ans = 4 6 ``` A more general question would be: why is `sum A` working at all?

Original source