Categoria

Linguagens de Programação e Runtimes

Metaprogramação em Ruby: como e quando usar method_missing e define_method
Linguagens de Programação e Runtimes

Metaprogramação em Ruby: como e quando usar method_missing e define_method

Metaprogramação é a técnica de escrever código que escreve código durante a execução. Ruby é uma linguagem particularmente favorável a essa abordagem devido à sua natureza dinâmica: classes podem ser abertas e modificadas a qualquer momento, objetos podem ganhar novos métodos em tempo real, e a introspecção é parte fundamental da linguagem.

05/05/2026
Nim: a linguagem de sistemas com sintaxe Python que compila para C
Linguagens de Programação e Runtimes 05/05/2026

Nim: a linguagem de sistemas com sintaxe Python que compila para C

Criada por Andreas Rumpf em 2008, Nim nasceu da insatisfação com as linguagens de sistemas existentes. Rumpf queria unir a produtividade de Python com o desempenho de C, eliminando trade-offs que forçavam desenvolvedores a escolher entre velocidade e expressividade.

Novidades do Java: records, sealed classes e virtual threads
Linguagens de Programação e Runtimes 05/05/2026

Novidades do Java: records, sealed classes e virtual threads

O Java, uma das linguagens mais maduras do ecossistema de desenvolvimento, passou por uma transformação significativa nos últimos anos. Três features se destacam por mudar drasticamente a forma como escrevemos código: records, sealed classes e virtual threads. Vamos explorar cada uma delas em detalhes, com exemplos práticos que mostram como essas novidades podem simplificar seu dia a dia.

OCaml: o nicho funcional que influenciou TypeScript, Flow e Reason
Linguagens de Programação e Runtimes 05/05/2026

OCaml: o nicho funcional que influenciou TypeScript, Flow e Reason

OCaml é uma linguagem de programação funcional que nasceu no Instituto Nacional de Pesquisa em Informática e Automação (INRIA) da França, na década de 1990, como sucessora do Caml Special Light. Herdeira da tradição ML (Meta Language), OCaml combinou pela primeira vez inferência de tipos robusta com um sistema de módulos poderoso e suporte prático a programação imperativa.

Introdução ao GraalVM: compilação nativa para JVM e polyglot
Linguagens de Programação e Runtimes 05/05/2026

Introdução ao GraalVM: compilação nativa para JVM e polyglot

A JVM tradicional, embora poderosa, apresenta limitações conhecidas: tempo de inicialização elevado, consumo significativo de memória RAM e necessidade de warm-up para que o compilador JIT (Just-In-Time) atinja seu pico de desempenho. Em aplicações serverless ou microsserviços, onde instâncias são criadas e destruídas rapidamente, esses problemas tornam-se críticos.

Introdução ao Python para iniciantes
Linguagens de Programação e Runtimes 05/05/2026

Introdução ao Python para iniciantes

Python foi criado por Guido van Rossum no final dos anos 1980 e lançado em 1991 com uma filosofia clara: legibilidade e simplicidade. O nome não vem da cobra, mas do grupo de comédia britânico Monty Python. A linguagem foi projetada para que programadores lessem código como se fosse inglês simples, reduzindo drasticamente o custo de manutenção de software.

Introdução ao sistema de efeitos em Koka e o que ele inspira
Linguagens de Programação e Runtimes 05/05/2026

Introdução ao sistema de efeitos em Koka e o que ele inspira

Koka é uma linguagem funcional que introduz um sistema de efeitos algébricos como parte central de seu design. Diferente de linguagens tradicionais onde efeitos colaterais são implícitos, Koka exige que todo efeito computacional seja declarado explicitamente na assinatura da função.

Introdução ao TypeScript para desenvolvedores JavaScript
Linguagens de Programação e Runtimes 05/05/2026

Introdução ao TypeScript para desenvolvedores JavaScript

Desenvolvedores JavaScript conhecem bem a liberdade da tipagem dinâmica. Em projetos pequenos, essa flexibilidade acelera o desenvolvimento. No entanto, à medida que o código cresce, os erros silenciosos se multiplicam. Um simples "2" + 2 resulta em "22" sem qualquer aviso, e funções que esperam números recebem strings inesperadamente.

JavaScript moderno: novidades e recursos essenciais do ES6+
Linguagens de Programação e Runtimes 05/05/2026

JavaScript moderno: novidades e recursos essenciais do ES6+

O JavaScript que conhecemos hoje passou por uma transformação radical a partir de 2015. Antes do ECMAScript 6 (ES6), a linguagem era funcional, mas carecia de muitos recursos que desenvolvedores consideram básicos atualmente. O ES5, lançado em 2009, serviu como base, mas foi o ES6 que realmente revolucionou a forma como escrevemos código JavaScript.