./2[|]/2"a" evaluates to the character code of the 
letter‘a’(97) using the traditional mapping of double quoted 
string to a list of character codes. Char is either a valid 
code point (non-negative integer up to the Prolog flag max_char_code) 
or a one-character atom. Arithmetic evaluation also translates a string 
object (see section 5.2) 
of one character length into the character code for that character. This 
implies that expression "a" works if the Prolog flag double_quotes 
is set to one of
codes, chars or string.
Getting access to character codes this way originates from DEC10 
Prolog. ISO has the 0' syntax and the predicate char_code/2. 
Future versions may drop support for X is "a".