NOTÍCIA

Mozilla adiciona Hygienic Macros ao JavaScript

Projeto Sweet.js está sendo preparado para suavizar o desenvolvimento em JavaScript, dando aos usuários hygienic macros com as quais possam trabalhar.

O projeto Sweet.js, da Mozilla, está sendo preparado para suavizar o desenvolvimento em JavaScriptJavaScript116 conteúdosJavaScript em 2020: O que esperarDev (Back & Front) · jan 2020Campos públicos e privados em classes JavaScript – O que vem por aí no ESNextDev (Back & Front) · abr 201929 anos de JavaScript!Dev (Back & Front) · jan 2025Ver tudo em Dev (Back & Front) , dando aos usuários hygienic macros com as quais possam trabalhar. Hygienic macros são macros que não se expandem para algo que irá interferir com outro código em um programa, por exemplo, não capturando variáveis. Isso as torna diferentes das macros encontradas em linguagens baseadas em C, que são apenas expandidas em texto.  Hygienic macros são tipicamente uma funcionalidade de linguagens do tipo Lips, como Scheme e Dylan, mas também aparecem em novas linguagens, como Rust, da Mozilla.

A adição de uma macro significa que desenvolvedores podem redefinir a linguagem, conforme o necessário. No site, um exemplo dado redefine a palavra-chave funtion para def usando esta macro:

macro def {
case $name:ident $params $body => {
function $name $params $body
}
}

que diria ao compilador (sjs) do Sweet.js para identificar o código como

def sweet(a) {
console.log("Macros are sweet!");
}

onde o primeiro parâmetro depois de def é um identificador, seguido por um parâmetro que, por sua vez, é seguido pelo corpo do código. Macros no Sweet.js também podem corresponder a padrões repetidos com ou sem separadores. Múltiplos casos diferentes podem existir, e macros podem chamar elas mesmas. O Sweet.js tem um compilador (sjs) que compila código dentro do JavaScript para que ele seja executado em runtimes não modificados do JavaScript.

O projeto Sweet.js vem sendo desenvolvido há alguns meses, mas ainda está num estágio inicial de desenvolvimento. Os autores esperam alguns bugs e relatórios de problemas no tracker do projeto. Escrito em JavaScript e utilizando a infraestrutura do Node.js, o Sweet.js pode ser instalado usando o comando npm install -g sweet.js. O fonte do compilador está disponível no repositório GitHub do projeto.

Com informações de The H

Matérias especiais e reportagens conduzidas internamente pela Redação iMasters. Acompanhe no Twitter @imasters e no Instagram/Threads @portalimasters

Ver perfil