Linguagem Hospedada


Uma linguagem hospedada (hosted language) é uma linguagem de programação que é projetada para ser executada sobre uma plataforma ou tempo de execução (runtime) já existente, em vez de compilar diretamente para código de máquina nativo do sistema operacional.

A filosofia por trás dessa abordagem é evitar a “reinvenção da roda”. Ao se hospedar em uma plataforma madura, a linguagem delega responsabilidades complexas de baixo nível para o “anfitrião” (host), permitindo que os criadores da linguagem foquem no design da sintaxe e na semântica.

Benefícios principais:

  • Acesso ao Ecossistema: A linguagem hospedada pode utilizar bibliotecas e ferramentas já existentes na plataforma anfitriã.
  • Abstração de Infraestrutura: O anfitrião gerencia aspectos críticos como o Garbage Collection (gerenciamento de memória), gerenciamento de threads e otimizações de compilação (Compilação Just-In-Time).
  • Interoperabilidade: Permite que o código escrito na linguagem hospedada chame funções da linguagem nativa da plataforma e vice-versa.

No caso do Clojure, a plataforma anfitriã principal é a Java Virtual Machine, embora existam versões hospedadas em ambientes JavaScript (ClojureScript) e .NET (ClojureCLR).

Referências