Access to SPIE eBooks is limited to subscribing institutions. Access is not available as part of an individual subscription. However, books can be purchased on SPIE.Org
Chapter 15:
Completing and Packaging Programs
Author(s): Scott W. Teare
Published: 2017
DOI: 10.1117/3.2266670.ch15
A program is not complete just because it produces an answer. Programmers need to consider how to leverage their investment of time and energy put into developing their simulator or calculator. The next steps can take many forms, probably the most valuable of which is providing thorough documentation of the program. Questions that often come up at this point can revolve around how to share the code that has been written. Sometimes it makes sense to release the code using an open-source type of license so that anyone can modify it as they may need to. Alternatively, the functionality of the code can be made available without providing source code. MATLAB® code can be compiled into a standalone executable using the MATLAB Compiler™. This approach is similar to that of many of the common compiled software languages such as FORTRAN or C—the code is shared by releasing the executable product. Alternatively, MATLAB code can be purposely obscured through conversion to P-code. While not encrypted or compiled, P-code is more difficult to read and yet runs with the same speed as unobscured code. Additionally, combinations of these ideas can be brought together by writing some components of a program in compiled languages and then using unrestricted code to connect the programs. This can work for code that has been compiled or just obscured. In this chapter, we explore different techniques that can be used for connecting MATLAB code to other programming languages, as well as the tools available for this purpose. We also discuss how to make MATLAB files that can be run but not modified. Finally, we look at some of the different features available for publishing or documenting code.
Online access to SPIE eBooks is limited to subscribing institutions.


Computer programming


Object oriented programming

Computer programming languages


Stationary wavelet transform

Back to Top