Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nullability #148

Open
divarvel opened this issue Oct 10, 2023 · 1 comment
Open

Nullability #148

divarvel opened this issue Oct 10, 2023 · 1 comment
Milestone

Comments

@divarvel
Copy link
Collaborator

divarvel commented Oct 10, 2023

Support for array and map types #135 implies the ability to query them. Since querying an array or a map is a partial operation, we need a way to handle errors / missing values.

Since biscuit datalog is untyped (for good reason imo, as much as i love types, i'm not sure how they could fit in the picture), a good solution for that would be to use a special null value for that.

Along with null, we need to define how it would interact with the rest of datalog:

  • behaviour with == (imo: behave as other values and return true when compared with null, false otherwise)
  • behaviour with other operators / methods (imo: behave as other values and blow up)
  • should it be possible to define it as a literal, or should it be only introduced by faillible operations?
  • defaulting operator (eg ??)
@Geal
Copy link
Contributor

Geal commented May 22, 2024

noting that it is related to #130 because if we test equality of null with any other types, then equality between different types should not return an invalid type error

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

2 participants