To be more precise: If I understand correctly, the preparser can be made
to accept any syntax, provided that this syntax is in no conflict with
valid Python syntax.
There is a special meaning of "?" and "??" in Python, but I think there
isn't a special meaning to "!". Sage accepts "!" at the beginning of a
line, meaning that it executes a shell command, such as
sage: !ls
But it should be possible that the preparser could turn "(expression)!" into
"gamma(expression+1)".
Do people agree? Unfortunately I do not volonteer to implement it, I'
not familiar with the innards of the preparser.
Best regards,
Simon