Diferenças entre linguagem de marcação e programação

As linguagens de marcação são linguagens que não são de forma alguma executadas ou usadas para executar ações, mas são usadas para estruturar dados, identificar dados ou apresentar dados, conforme o caso. Os exemplos são HTML (define conteúdo da Web), XHTML (o mesmo com html, mas com algumas diferenças), XML (para estruturar dados, em alguns casos, para definir a estrutura da interface do usuário como é usada no desenvolvimento de aplicativos Android) etc.

Linguagens de programação são linguagens que são interpretadas em tempo de execução. É como um arquivo contendo instruções para um computador seguir para executar uma tarefa. Pense nisso assim. Se você fosse participar de um filme, você definitivamente receberia um roteiro para ler, memorizar e seguir. Assim, o roteiro se torna o seu guia para realizar suas funções nesse filme. É tão simples quanto isso. Exemplos de linguagens de script são javascript, script VB, Perl, python, php, script, etc