Your .m file deserves a shorter trip to the compiler

If your script already lives in a .m file, copying it into a browser editor just to try a change is a needless detour. The upcoming update to TheOnlineToolset’s MATLAB®-compatible online compiler is designed to make that everyday workflow simpler: open one .m file, work on it in the editor, then save your changes back as source code.

The compiler runs GNU Octave, an open-source numerical computing environment with a language that is largely compatible with MATLAB®. That distinction matters: this is a MATLAB®-compatible code runner, not MathWorks MATLAB® software. Compatibility varies, and the online compiler does not include proprietary MATLAB® products or toolboxes.

Open the MATLAB®-compatible compiler to explore the current GNU Octave workspace.

What’s coming to the MATLAB®-compatible compiler

Open and save a .m file

A file toolbar is coming to the compiler editor. Use it to open a UTF-8 .m source file from your device, make changes in the browser, and save the edited source back as a .m file.

Opening a file happens in your browser. Its code is submitted to the compiler when you choose Run. The file workflow is built around one source file at a time, so it is not a MATLAB® project importer: it does not open a folder of dependent scripts or MATLAB® Live Scripts (.mlx).

For a quick test, that simpler path is useful. Pick up an existing script, adjust a calculation, run it, and keep the source file you can continue editing later.

Keep plots with the results

The compiler can capture supported figures created by an Octave script and display them with the run output. Up to four figures can be returned from a run, which is handy when a script calculates values and plots them together.

For example, a script using plot(t, sin(t)) can return a visual result without requiring a desktop graphics window. The plotting workflow is designed for static output; interactive GUI windows are not part of this online compiler.

Use the included Octave packages

GNU Octave 9.4.0 is the runtime behind the MATLAB®-compatible compiler. The environment also includes the Octave control and signal packages. Load the package your script needs with its normal Octave command, such as pkg load control or pkg load signal.

These packages add useful options for control-system analysis and signal-processing work. They are a curated part of this runner, not a promise that every MATLAB® toolbox or Octave package is available.

Quick reference

Capability

What to expect

Runtime

GNU Octave 9.4.0

Source file workflow coming soon

Open and save one UTF-8 .m file

Source size

Up to 64 KiB

Included Octave packages

control 4.1.1 and signal 1.4.6

Plot output

Up to four captured figures per run

Execution window

12 seconds per run

MATLAB® compatibility

Varies by script and function

MATLAB® software and proprietary toolboxes

Not included

What this update is good for

This workflow is aimed at practical MATLAB-style scripting: checking a matrix calculation, experimenting with a numerical method, running a signal-processing script with the included package, or changing a plot and seeing the result.

The shorter .m file path is especially useful when you already have source code and want to test it without setting up a local GNU Octave installation. Open the file, make a focused edit, run it, inspect the console and plots, then save the source you want to keep.

The online compiler runs submitted code in a bounded environment. Scripts must fit the configured source and execution limits, and packages outside the included set are not available for installation during a run.

Frequently asked questions

Is this a MATLAB® compiler?

It is TheOnlineToolset’s MATLAB®-compatible online compiler, powered by GNU Octave. It does not run MathWorks MATLAB® software and does not promise that every MATLAB® script will work unchanged.

Can I run any MATLAB® .m file?

Some .m files may run, but compatibility varies. Scripts that depend on proprietary MATLAB® toolboxes, Simulink®, App Designer, desktop GUI features, or unsupported functions are outside this compiler’s available environment.

What does the upcoming file update add?

The planned workflow lets you open one UTF-8 .m file in the browser editor, edit it, and save the source back as a .m file. It does not import a complete multi-file MATLAB® project or .mlx Live Script.

Can I see plots from an online run?

Supported Octave figures are captured and displayed with the run output, up to four images per run. Interactive desktop windows are not supported.

Which Octave packages are included?

The environment includes control 4.1.1 and signal 1.4.6. Load them in your script with pkg load control or pkg load signal. Other MATLAB® toolboxes are not included.

A smoother route from source file to result

The upcoming .m workflow is a small but useful improvement: spend less time moving code around and more time testing the calculation or plot you actually care about. The MATLAB®-compatible compiler pairs that workflow with GNU Octave, supported figure output, and a focused set of numerical packages.

Try the MATLAB®-compatible compiler and see whether your script fits the GNU Octave environment.

Trademark notice: MATLAB® and Simulink® are registered trademarks of The MathWorks, Inc. This service is not affiliated with or endorsed by The MathWorks, Inc.