For the piping scenario you used above (Using open() for IPC), the question is not can Perl create a .mat file but can MATLAB. This literally feeds these commands to the MATLAB executable via its command line interface, and hence my concern about not working with command line MATLAB for about a decade.