Sunday, October 21, 2012

Migrating to Maple IDE

We are proud to announce you about the new feature in the Maple IDE - Importing existing MPL files into a Maple Project.

You can ​update Maple IDE using Update Manager mechanism in the Eclipse.

The following article briefly introduces the migrating process using the new import wizard, and then provides the video for users who are considering to use MPE for theirs existing Maple applications.

What about MPL files?

Maple files with code can be very huge. Some Maple modules have more then 10000 lines of code. For instance, RegularChains module from RegularChains.mla library has more then 450 lines for locals and exports definitions only (without the module body). The standard solution for such a situation is the Maple preprocessor. The preprocessor implements some subset of the C preprocessor's capabilities such as include, define, ifdef and so on. A Maple programmer can split a module code into parts and use include directive to "compile" the pieces together.

It was hard decision for us to not support the preprocessor directives. On the one hand, we understand that Maple programmers has a lot of code with preprocessor directives, but on the other hand, we also understand that to go to the future we need to reject supporting such old technology as preprocessor directives.

We made the decision not to support the preprocessor directives but make an importing tool to import from *.mpl files to *.maple files.

Import MPL file into a Maple project

MPL import wizard provides fast and super easy way to translate your existing MPL files into a Maple Project.

The main concepts of the MPL import wizard are:

  • migrating process and transition curve must to be smooth.
  • you need not more than 3-4 steps before you can resume working with your existing Maple applications in MPE.

Explore the following video to know how to import existing .mpl files:

Conclusion

The wizard was tested on a bunch of huge modules, and I can say that modules with up to 2500 lines of code can be imported and used without any problems. But what if you want to import more lines of code? Do we need to use preprocessor directives in that case? The answer is no! You still can import your code to *.maple files but the resulting files will be too huge to work with the code effectively in the editor.

It is obvious that we need some sort of further refactoring in general case of an importing. The main idea is do not do such a refactoring by hands, but use special wizard for that.

No comments: