Expressões Simbólicas
Tudo na Wolfram Language é uma expressão simbólica.
- números
- cadeia de caracteres (strings)
- imagens
- arranjos
- representações gráficas
- fórmulas
- documentos
- interfaces
- código
- ...
Comentários para programadores de Java:
Expressões simbólicas oferecem uma maneira generalizada de representar dados em uma estrutura uniforme tipo árvore. Elas adicionam um alto nível de flexibilidade em programação, permitindo a manipulação de estrutura e conteúdo. Java não tem recursos simbólicos, embora recursos básicos possam estar disponíveis usando bibliotecas externas.
Comentários para programadores de Python:
Expressões simbólicas oferecem uma maneira generalizada de representar dados em uma estrutura uniforme tipo árvore. Elas adicionam um alto nível de flexibilidade em programação, permitindo a manipulação de estrutura e conteúdo. Python não tem recursos simbólicos integrados, mas você pode construir expressões arbitrárias com a sintaxe simbólica da Wolfram em Python usando language.wlexpr da Wolfram Client Library para Python.
Todas as expressões simbólicas têm a mesma estrutura fundamental: Head[arguments]
Comentários para programadores de Java:
O head de uma expressão identifica o tipo de dado ou operação sendo representado. Diferentemente de Java, que é de tipagem estática, o head de uma expressão em Wolfram Language pode se transformar durante o cálculo.
Comentários para programadores de Python:
O head de uma expressão em Wolfram Language identifica o tipo de dado ou operação sendo representado e pode ser transformado durante o cálculo. Cada objeto de Phyton tem uma classe declarada e não pode ser alterado.
O argumento de uma função pode ser qualquer expressão simbólica:
A Wolfram Language é totalmente simbólica, assim as "variáveis indefinidas" sempre tem o valor de si mesmas:
Comentários para programadores de Java:
Objetos e primitivas em Java não inicializados geralmente aceitam valores padrão de null, 0 ou false, e tentar usar tais variáveis pode causar NullPointerException ou outros erros.
Comentários para programadores de Python:
As expressões simbólicas em Wolfram Language permitem que os programadores utilizem variáveis indefinidas como símbolos em seus cálculos. Variáveis não definidas em Python são consideradas "indefinidas", e tentar usar uma variável não definida causa NameError.
FullForm sempre mostra a estrutura subjacente.
Head sempre indica a cabeça de uma expressão; Length indica o número de argumentos.