What parts of MATLAB would you not miss?

Walter Roberson on 21 Feb 2011
Latest activity Reply by Walter Roberson on 20 Nov 2025 at 1:15

Are there parts of MATLAB that could disappear as far as you were concerned, things you don't need or which were "bad ideas" or which cause more trouble than they are worth in your experience?
One suggestion per answer please, so we can see how other people feel about the same matters.
Steven
Steven on 19 Nov 2025 at 20:13
The new limitation of figures to require every 'child' to either all have time zones or none have time zones. The old functions worked better where data could be plotted with and without time zones. When no time zone was assigned, it would simply match the data for the ones with time zones.
Steven
Steven on 19 Nov 2025 at 20:08
explicit expansion for '+' and '-', it wasn't there before.
Walter Roberson
Walter Roberson on 19 Nov 2025 at 22:16
Implicit expansion for + and - has been supported as long as implicit expansion has been supported.
John D'Errico
John D'Errico on 9 Mar 2025
Global variables. A crutch that causes more problems then they will ever solve.
Walter Roberson
Walter Roberson on 20 Nov 2025 at 1:09
You always have to have something that fills the role of global variables, even if with more inconvenient syntax.
Suppose you want a counter of the number of times I/O routines are called. You cannot attach the counter to individual instances of file descriptors: those would be individual counters, not total counters. You cannot attach the counter to the fopen() call somehow, because you are counting calls to multiple functions. You cannot attach the counter to a particular class instance because you are counting total calls over multiple class instances.
Can you attach the counter to a static class variable? Yes, if it is a sufficiently high level class. However, static class counters are just disguised global variables.
Suppose you want a class to keep track of all instances of the class, such as the ability of the graphics class to track all graphics objects so that you can use findobj() or findall((). You need the master list to be outside of any instance of the class... you either need a global variable or you need a class static variable... but class static variables are just fancy ways of implementing global variables.
John D'Errico
John D'Errico on 9 Mar 2025
UINT64, INT64. Yes, these classes give us a slightly larger integer range than a double. Better in my eyes would have just been to introduce a quad precision class, that would have solved more problems, and still have given a significantly larger FLINT than either of those integer classes.
Walter Roberson
Walter Roberson on 20 Nov 2025 at 1:11
You need uint64 to be able to pass opaque pointers around.
John D'Errico
John D'Errico on 9 Mar 2025
DET (and to some extent INV.) Yes, I use them both at times, as they both certainly have their uses. Yet they are both heavily misused by many. Do you see an inverse in an equation? We need inv! Need to test for singularity? Just use det! Det is the worst of the two of course in terms of frequency of misuse and the problems that arise from that misuse. I put the blame for this on the teacher who teaches a concept without also teaching the flaws.
John D'Errico
John D'Errico on 9 Mar 2025
RUN. Never had a use for it, never will. I think it encourages the writing of scripts too much instead of functions.
John D'Errico
John D'Errico on 9 Mar 2025
EVAL is evil. Top of the list for me. ;-)
I just thank god they never gave us goto in MATLAB.
Roger Schvaneveldt
Roger Schvaneveldt on 8 Mar 2025
cell arrays of character vectors. String arrays are better in may ways, but matlab is replete with cell arrays of character vectors. Too bad string arrays were not developed first in matlab.
Walter Roberson
Walter Roberson on 20 Nov 2025 at 1:15
You still need low-overhead methods of accessing individual characters. Continually having to call MID$(StringArray, startposition) or MID$(StringArray, startposition, length) is too much overhead (and necessarily returns a string array instead of an individual character.)
Steven Lord
Steven Lord on 2 Oct 2020
Tim Harmon: Depending on your license and what you need to use MATLAB to do, this may be possible. See MATLAB Online.
Tim Harmon
Tim Harmon on 2 Oct 2020
Installing MatLab
\