Interoperability
To make the toolbox most useful for other users, it should be depending only on Matlab™ itself, not on a specific operation system and not on any additional (nonfree) toolboxes.
There are (at least) two aspects of interoperability for a Matlab™-based toolbox:
- Matlab installation
Version and additional toolboxes installed - Operating system
The toolbox should rely on as few preconditions as ever possible to guarantee a maximum of interoperability between different operating systems as well as Matlab™ installations.
Matlab installation
Matlab™ in itself is a commercial program, and whereas it would be ideal to not have to rely on a commercial software, it seems not feasible to not use Matlab™ for our purposes.
Nevertheless, if you contribute code to the toolbox, beware of a few key aspects:
Operating systems
Like it or not, but even in an academic scientific environment, you have to deal with all three major operating systems (Windows, Linux, Mac OS X).
Although Matlab™ tries to help you quite a bit with that, there are a few things you should be aware of from the very beginning.
A non-exhaustive list of important aspects for cross-platform programming with Matlab™:
- Never hardcode file paths, always use
fullfile
. - Don't use system calls.
- Always properly test your code on all three major platforms (if ever possible).