Parser: add missing standard infix operators (** ^ >> << xor div /\ \/ :) #29
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
navicore/patch-prolog#29
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Several standard infix operators are absent from the parser. Tested via
in-file clauses (which error cleanly on an unknown operator):
**unexpected \*``)^Unexpected character '^')>>expected \.`, got `>``)<<xorgot atom \xor``)divgot atom \div``)/\Unexpected '\')\/:Unexpected ':')Supported today (baseline):
mod,rem,+ - * / //, the 700-levelcomparison/
is/=..family, and, ; ->.Repro
Notes
** ^ >> << xor div /\ \/) need both a parseroperator entry and an evaluable-function in
is/2.:is non-arithmetic (module qualifier / general infix) — parser-level only.\(and/\,\/) require tokenizer work —\is not a standalonetoken today (see prefix-gap issue #28).
Context
Found while building the
loglingsoperator lessons. Companion to the prefixgap (#28). Together these complete the standard operator table, after which the
"full prefix + infix" documentation can be written accurately.
Reported against
prlg0.4.1.#33