The Matlab Invocation Bindings (Version 2530) provide an interface to BRAHMS from the Matlab prompt. Typically, BRAHMS is invoked to run a System that has been built using the SystemML Matlab Bindings.

  • These bindings have ALPHA status. They should not be used in production code, only for testing.

Comparison with 995

Binding 2530 moves to the classdef syntax offered by Matlab, and thus has a less clunky syntax. Specifically, the latter syntax in this example works under 2530, but not under 995.

M Source Code (against 2530)
% 995 or 2530 sys = sys.addprocess(...); % 2530 only sys.addprocess(...);

2530 is a transitional binding and is entirely backwards compatible with 995 with one exception - since the objects sml_system, sml_log, and brahms_execution now use the classdef syntax and are handle objects, copying them using obj2 = obj creates only a shallow copy. This will usually be the behaviour you want, but if you need a deep copy you should use the syntax obj2 = obj.clone().


2530 is not suitable for use with Octave, at time of writing, since Octave does not support the "classdef" syntax for object-oriented design. If Octave has been upgraded to support this (this was under discussion in 2008), it may be worth trying.