Skip to content
/ mcst Public

MATLAB concrete syntax tree, developed on MATLAB, tested and available on MATLAB and Python.

License

Notifications You must be signed in to change notification settings

andy-math/mcst

Repository files navigation

mcst

MATLAB concrete syntax tree, developed on MATLAB, tested and available on MATLAB and Python.

Current stage:

  • Bootstrap (via transpile to Python)
  • Fully compatible with standard MATLAB
  • Fully tested
  • Production ready

Known limitations:

  • Ellipses are not supported (working in progress)
    some = fun(args, arg2, ...
               arg3, arg4, arg5)
  • Command format not supported (working in progress)
    hold on
  • Exclamation point are not supported (working in progress)
    !mkdir a
  • Multiple inheritance is not supported (low priority)
    classdef A < B & C
  • Calling a parent class function of the same name from a subclass is not supported (low priority)
  • Lack of robust and user-friendly error messages (low priority)

Roadmap:

  • Build auto-formatter tool
  • Support ellipses
  • Support command format
  • Support exclamation point
  • More test cases
  • Improve performance

For more information about concrete syntax tree, see:

https://github.com/psf/black/tree/main/src/blib2to3

https://libcst.readthedocs.io/en/latest/why_libcst.html

About

MATLAB concrete syntax tree, developed on MATLAB, tested and available on MATLAB and Python.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages