Tradicionalmente, em Prolog, strings são uma lista de caracteres e caracteres são interos pequenos.
A = `abc efg 123`.
Implementação é um problema. SWI modificou o Prolog para que strings sejam um tipo básico (mas que pode ser convertido para listas).
manual do swiprolog para strings
A = "abc efg 123".
Entre " é o tipo novo com predicados para processar esse tipo
string_concatsplit_stringsub_stringHa na verdade 2 representações de caracteres
codes são os inteiros pequenos
chars são simbolos cujo nome é apenas a letra
string_codes("abc efg 123",B).
string_chars("abc efg 123",B).
Leitura de baixo nivel (por caracter) manual
Leitura de termos de prolog completos (terminados por ponto). read
read(X).
SWI prolog tem um predicado read_string que le strings (internos do SWIProlog).
printNão há uma biblioteca padrão para todas as implementações de prolog.