[Contents] [TitleIndex] [WordIndex

Tech docs for mexlib

the stuff you think we should know

I did a good progress with mexlib but it is not done. Some tests are broken and some functions added in last mex specification are not implemented. All not implemented functions are declared at the end of mex.h file or marked with FIXME or TODO comments in mexlib.cpp.

I implemented memory management just calling standard memory functions (e.g. mxMalloc just call MALLOC), I don't know if it is right, maybe it has some memory leaks. This implementation do mexMakeMemoryPersistent useless.

Some important things:

Known bugs

My known bugs are broken tests. I describe it below.

What should be done next?

We should implement remained functions and test it with real mexlib files.

Is it a version 0.1 or 1.0?

It is something lika an alpha version. Some functions are not implemented yet. I guess it is an usable version, but only an early adopter will do that.

How many unitary tests? Where are they?

All mexlib tests are in mexlib module. To run then:

unit_test_run("mexlib", [], "no_check_error_output")

I have 67 unit tests, but 3 are broken.

Tests broken are:

Are you planning to implement what is missing?

Most part of what I didn't implemented, Bruno JOFRET and Allan CORNET will work on it, because it isn't an easy task. I won't have time in next months to work on it, because I'm late with my graduation project.

Are you planning to maintain it in the future?

I liked mexlib and Scilab and want to maintain it in the future, but for now I can't because of my spare time in next months. Maybe work in other parts of Scilab too.

Which mexlib functions are implemented?

Types defined: mxLogical, mxArray, mxChar, mxClassID, mxComplexity, mwSize, mwIndex, mwSignedIndex, mwPointer

These functions should work like specified. They are implemented and tested:

Some functions are implemeneted but not really tested or with some known issue:

Functions not implemented:

Functions marked as obsolete are maintained in Scilab for backward compatibility with old mex versions, but these functions are removed from last mex specs.


2022-09-08 09:26