4D v15 permite salvar strings de código nos métodos 4D em Unicode:
- Nos bancos de dados criados com 4D v15 e posteriores, o código dos métodos é salvo automaticamente em Unicode
- Nos bancos de dados convertidos a partir de uma versão anterior, a nova opção Salve métodos em Unicode das propriedades do banco de dados permite passar ao modo  Unicode:   

Nota: Se você alterar essa configuração, você deve reiniciar o aplicativo para que as alterações sejam consideradas. Você pode ativar ou desativar essa opção a qualquer momento; apenas os métodos salvos posteriormente são afetados.
Em  versões anteriores de 4D, as strings no código dos métodos (fórmulas,  nomes de variáveis e métodos, comentários, etc.) são armazenados  usando a codificação atual local. Essa  codificação pode causar problemas, especialmente quando o código 4D é  compartilhado entre os desenvolvedores de diferentes países: por  exemplo, se um desenvolvedor francês escreveu código 4D com acentos e,  em seguida, envia o banco de dados para um desenvolvedor de Inglês, esses acentos  são perdidos. Problemas graves também podem ocorrer com o código escrito em versões em japonês.
Salvar métodos como Unicode resolve todos esses tipos de problemas e torna  possível a troca de código 4D que contém caracteres locais específicos.
Nós recomendamos que você ative a opção do modo Unicode para métodos  logo que seja possível em seus bancos de dados existentes, especialmente se  você trabalhar em um ambiente internacional.
Nota de implementação: este novo recurso se aplica a linguagem em si mesma e sua interpretação. Algumas  janelas do editor 4D, tais como a lista de propriedades, ainda usam a codificação atual  local e, portanto, podem mostrar algumas strings incorretamente.  No entanto, isto não afeta a execução do código.
O armazenamento de métodos 4D em Unicode é  transparente para os usuários (em um novo banco de dados 4D v15 ou  em um banco de dados convertido se a opção Save methods as Unicode estiver selecionada).
Entretanto, as mudanças internas necessárias criaram  uma profunda mudança na representação dos ponteiros no código 4D. Os "novos" ponteiros foram melhorados internamente e também suportam  funções adicionais, tais como elementos de um array 2D (ver RESOLVE POINTER).
Para  manter a compatibilidade com componentes e plug-ins pré-compilados, um novo tipo  de ponteiro foi adicionado à linguagem 4D, ao invés de substituir o  tipo existente. Este novo tipo é tratado de forma transparente em suas aplicações. No entanto, note que:
- RESOLVE POINTER agora retorna -1 em vez de 0 no quarto parâmetro para ponteiros para variáveis e arrays unidimensionais.
- Get pointer vai se comportar de maneira diferente em relação aos  nomes de variáveis inválidos ou espaços adicionais.