According to Wikipedia the following are the definitions of Scripting, Programming, and Markup languages. I was reading an article where the author said he didn’t know the difference between the three and I realized I didn’t either. I’m not sure I know now…
Scripting languages (commonly called scripting programming languages or script languages) are computer programming languages initially used only for simple, repeated actions. The name comes from a written script such as a screenplay, where dialog is repeated verbatim for every performance. Early script languages were often called batch languages or job control languages. A script is more usually interpreted than compiled, but not always.
Many such languages are quite sophisticated and have been used to write elaborate programs, which are often still called scripts even though they go well beyond automating simple computer tasks. A script language can be found at almost every level of a computer system. Besides being found at the level of the operating system, they appear in computer games, web applications, word processing documents, network software and more. In many ways, the terms high-level programming language and scripting language have become entwined, and there is no clear delineation between the two.
A programming language is a stylized communication technique intended to be used for controlling the behaviour of a machine (often a computer). Like human languages programming languages have syntactic and semantic rules used to define meaning.
Thousands of different programming languages have been created and new ones are created every year. Few languages ever become sufficiently popular that they are used by more than a few people, but a professional programmer is likely to use dozens of different languages during their career.
A markup language combines text and extra information about the text. The extra information, for example about the text’s structure or presentation, is expressed using markup, which is intermingled with the primary text. The best-known markup language in modern use is HTML (HyperText Markup Language), one of the foundations of the World Wide Web. Historically, markup was (and is) used in the publishing industry in the communication of printed work between authors, editors, and printers.
According to http://home.pacbell.net/ouster/scripting.html :
“Scripting languages are designed for different tasks than system programming languages, and this leads to fundamental differences in the languages. System programming languages were designed for building data structures and algorithms from scratch, starting from the most primitive computer elements such as words of memory. In contrast, scripting languages are designed for gluing: they assume the existence of a set of powerful components and are intended primarily for connecting components together.”
Okay – now we’re getting somewhere. “Scripting languages aren’t intended for writing applications from scratch; they are intended primarily for plugging together components.” ” To summarize, system programming languages are designed to handle the same tasks as assembly languages, namely creating applications from scratch.”
What about Markup Language? Micorosoft Support Glossary defines it as:
n. A set of codes in a text file that instruct a computer how to format it on a printer or video display or how to index and link its contents. Examples of markup languages are Hypertext Markup Language (HTML), which is used in Web pages, and Standard Generalized Markup Language (SGML), which is used for typesetting and desktop publishing purposes and in electronic documents. Markup languages of this sort are designed to enable documents and other files to be platform-independent and highly portable between applications. See also HTML, SGML.
So markup language pertains specifically to documents. Progress is being made! Programming Languages are for creating applications, scripting languages are for connecting components already in existance to make them into something else and markup deals with documents either for printing or publishing to the web. I think I have it…I am learning markup, I plan to learn some scripting, and I will definitely stay away from programming!