The present invention generally relates to the useful art of computer software programming.
Many software programs have been developed for use in commerce and other applications throughout the world that have been coded in the C programming language. Programs written in the C language must then be compiled to create a file that a digital computing means, such as a computer, can execute. In contrast to the above, a program written in a script language, such as PERL for example, can be executed directly, i.e., it does not have to be compiled. The script language itself will parse (search) the file, and execute it line by line.
The C language program is compiled into the native language of the computer it is running on, and often runs faster because of that. While it may run faster, it is not normally possible to directly change the executable file. While this is often considered to be desirable, there are advantages and disadvantages associated with programs written in a script language as well as those that must be compiled.
A library in C or other language generally comprises one or more files where each file has a single subroutine or function that can be used by any programmer that has access to and calls (pulls) the file. The main program can call the individual files that are needed to carry out its operation.
When writing C code as well as many other languages, it is common that a subroutine that is created can be useful in more than one program. The subroutine is often placed in a particular library file which can be called whenever one of the programs needs it. There is an advantage of having such a library file in that it is in a single location so that if it has to be changed, it only has to be changed at that single location.
A problem can arise if a script subroutine is used in many different scripts of many applications, for example., and a significant change is subsequently required in the subroutine. If that happens, it would be necessary to run all of the scripts that used that subroutine to test and make sure that it still worked in all of the various scripts.
Also, a script may have been written to do a specific operation or function, which was later determined to be useful in performing other operations in other programs. One way to use such a script is to remove the subroutine from the script and put it in a library file and then the script merely calls the library file having the subroutine.
If multiple programmers are working together on some project, one person might create a library, i.e., a subroutine, to perform a function, while another person writes the main program. The library creating person usually writes a script or a program as a “wrapper” around the library file to make sure the library file works. For example, if a subroutine that takes 2 input numbers and returns the product of the two, a library file can be written to do this, but the library file itself does not do anything except provide the subroutine. It is necessary to write another script to call the subroutine, input two numbers and check the result to determine if the subroutine worked. That is referred to as a wrapper or dummy script because its only purpose is to test whether the library file works.
It is inconvenient and time consuming to test a library script file in every application that it may be used.