Skip to content

Module language does not support "not equals" #23

@jecxjo

Description

@jecxjo

Per the manual Racklog's module language accepts the Datalog syntax. I noticed that the not equals != triggers an error when loaded under #lang racklog. The same code loads fine when set to #lang datalog

#lang racklog

edge(a, b).
edge(b, c).
edge(c, d).
edge(d, a).

neighbor(X, Y) :- edge(X, Y).
neighbor(X, Y) :- edge(Y, X).

close_neighbor(X, Y) :- neighbor(X, Y).
close_neighbor(X, Y) :- neighbor(X, Z), neighbor(Z, Y), X != Y.

close_neighbor(a, Y)?

Error:

!=: unbound identifier;  
 also, no #%top syntax transformer is bound
  in: !=
  context...:
   /usr/share/racket/collects/racket/private/stxparam.rkt:61:2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions