Writing software from scratch gives you the most flexibility but can take a very long time and drive you nuts in the process. Hypothesize, for example, that you want to write a word generator specifically for creating screenplays.
If you choose to use a general-purpose language such as C++ or Pascal, you first need to write commands that create a simple word processor; you then r need to write supplementary instructions to give the word processor the features indispensable to create and format screenplays. As an choice to going mad by writing everything yourself, many softwares offer their own scripting languages. Preferably than write an whole word processor from scratch, you can purchase an existing word generator (such as Word Perfect or Microsoft Word) and then use that word processor’s scripting language to make the word generator do what you want it to do (such as produce and format screenplays). A scripting language enables you to center the task that you want to fulfill without concerning about irrelevant details.
But prior to jump whole-heartedly into learning and utilizing a scripting language, beware of the next problems:
Scripting languages are linked to a particular program. If you customize a word processor by utilizing a scripting language, your software runs only on computers that run that specific word processor. If you personalize Microsoft Word, your software works only on computers that can run Microsoft Word, such as Windows and mackintosh computers. Marketing and selling your programs is a lot more hard. To use your program, people should buy or already own the program (word generator, spreadsheet, and so on) that you personalize. So if you produce a traditional program for Word Perfect, Microsoft Word users can not utilize it.