The distinction is semantic. Traditionally, compiled executables (binaries) are known as programs, and interpreted programs are usually known as scripts. In the context of CGI, the distinction has become even more blurred than before. The words are often used interchangeably (including in this document).Present usage favours the word "scripts" for CGI programs.