Define a class in a Livescript with the .m extension

10 views (last 30 days)
Hello,
As of R2025a livescripts can be saved as .m files. I am wondering if it is possible to create classes in livescripts saved as .m files. This to doument them with the livescript features.

Accepted Answer

Ruchika Parag
Ruchika Parag on 7 Jul 2025
Hi @CAME, as of MATLAB R2025a, live scripts can indeed be saved in a plain-text .m format, which makes them more compatible with version control and easier to read in text editors. However, this change does not allow class definitions (classdef) to be created directly within live scripts, even when saved with a .m extension.
Live scripts are designed primarily for narrative workflows, examples, and analysis rather than for defining reusable code structures like classes. While you can call and interact with classes defined in separate .m class files from within a live script, the script itself cannot contain the full classdef block.
To document classes using live script features such as formatted text, equations, and embedded outputs, the recommended workflow is:
  1. Define your class in a standard .m file (outside the live script).
  2. Use a live script to demonstrate and document how the class works—instantiating objects, calling methods, and explaining functionality with commentary and rich formatting.
This approach maintains compatibility with MATLAB’s class system while leveraging the documentation benefits of live scripts. Hope this helps!

More Answers (0)

Products


Release

R2025a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!