Skip to content


This guide explains why a parse problem may occur and describes how to fix it.

In general, you get a parse problem when your code doesn’t conform to the Rel syntax rules, thus the Rel compiler isn’t able to work with it.

Here’s an example that returns a parse problem:

def friends = {("Mike", "Anna"); ("Zoe", "Jenn"))}
Error example from the RAI Console

The use of unbalanced parentheses in the second tuple, i.e., ("Zoe", "Jenn")), causes the error.

Note that the RAI Console helps you detect this by underlining where the error is located. A general suggestion to fix this error is to look for misspellings, incorrect characters, extra spaces, incorrect encoding, or other mistakes.

List of Parse Problems

The following is a full list of potential causes of parse problems. The RKGS replaces <token> with a concrete suggestion based on your code:

TypeError Message
Missing“Missing closing <token>.”
Missing“Missing closing quote in char literal <token>.”
Missing“Missing closing quote(s) in string literal <token>.”
Missing“Missing operand for <token>.”
Missing“Missing expression in <token>.”
Missing“Missing keyword <token>.”
Invalid“Invalid token <token>.”
Invalid“Invalid token <token>. Expecting abstraction bindings.”
Invalid“Invalid token <token>. Expecting one of {<token>}.”
Invalid“Invalid token <token>. Expecting the start of a top level declaration. E.g., def or module.”
Invalid“Invalid token ,. Use parentheses around complex relational abstractions.”
Invalid“Invalid use of keyword <token>.”
Invalid“Invalid character literal <token>.”
Invalid“Invalid character sequence.”
Invalid“Invalid literal value of type <token> in annotation.”
Syntax not supported“Annotations (<token>) not supported at top-level expressions.”
Syntax not supported“String interpolation not supported in RelName literals.”
Incomplete syntax“Unexpected End-Of-File.”
Warning“Declaration ignored due to token <token>.”
Warning“Annotation ignored due to invalid values.”
Was this doc helpful?