Obrigado, foi muito fofo da sua parte.
A explicação de pilha de chamada está correta, mas lembre-se que nem todas as linguagens possuem exceções, e algumas podem ter de uma forma um pouco diferente do descrito.
O GC explicado aí é um reference count, que algumas pessoas nem chamam de garbage collector (eu chamo), em geral a maioria das vezes quando se fala de GC está falando de um não determinístico, um rastreador, que funciona de uma forma diferente, com vantagens e desvantagens. Tem mais informações no link na postagem principal. Poucas linguagens, especialmente as mais mainstream, trabalham com um GC de refcount. Em muitas linguagens não se recomenda chamar o tracing GC manualmente, apesar de poder e ser útil em casos bem específicos.
Para scripts realmente a preocupação com memória não é relevante, mas quando se faz aplicações, entender bem o funcionamento dela pode ajudar muito a tomar certas decisões. Se a pessoa vai fazer aplicações complexas, que são pesadas, e não querem se preocupar com a memória, por isso escolheu uma linguagem de script, pode ter sido uma decisão equivocada.