Em 2026, a programação tradicional que opera em espaço unidimensional está prestes a ser desafiada por linguagens que exploram o potencial da programação em duas dimensões. Como sugere o artigo publicado em shukla.io, a escrita de expressões verticais pode não apenas mudar a forma de estruturar o código, mas também aumentar sua eficiência e legibilidade.
A ideia de que as expressões podem ser escritas verticalmente, como a inequação ‘a < b’, abre caminho para uma nova maneira de compor funções. A notação infixa tradicional, predominante em linguagens de programação, é desafiada pela necessidade de representar funções de três argumentos de forma mais intuitiva. Por exemplo, a expressão ‘and y and z x’ em Python, que tecnicamente é a composição de múltiplas funções binárias, poderia ser simplificada com uma notação trinária.
Um operador chamado ‘andFlip’, definido como ‘def andFlip(args): if args[0] and args[1]: args[2] = not args[2]; return args[2]’, ilustra a necessidade de uma notação infixa verdadeiramente trinária. A tentativa de representação em notação infixa é complexa e propõe-se uma solução mais visual, aproveitando a dimensão Y para facilitar a concatenação de operações.
Um exemplo prático é o controle de uma porta automática em um galinheiro, onde o microcontrolador盯 tracks três condições para alternar a porta: a passagem do limiar de crepúsculo/amanhecer, a estabilidade da leitura por cinco minutos e a ausência de alternância recente. A expressão ‘(x @@ y) @@ z’ é uma alternância de três vias, onde x, y e z devem ser verdadeiros para a porta alternar.
A linguagem espacial ganha ainda mais interesse com a introdução de encadeamento vertical, permitindo a reconfiguração de variáveis mutáveis como ‘t1’ dentro da própria expressão, o que remete à computação quântica e ao conceito de ‘uncomputing’.
Outros exemplos de linguagens espaciais incluem Befunge, que tem seu ponto de instrução viajando fisicamente em um grid, e Orca, um sequenciador de codificação ao vivo onde cada letra é um operador que lê seus vizinhos. Essas linguagens oferecem uma nova perspectiva na programação que pode moldar o futuro dos sistemas computacionais.
A transição para linguagens que exploram o espaço bidimensional pode não apenas expandir nossa compreensão da programação, mas também levar a avanços na eficiência e na simplicidade de códigos, permitindo a representação de operações mais complexas de maneira mais intuitiva e compacta.