Skip to content

Stricter rule consistency #63

@Charles-Johnson

Description

@Charles-Johnson

Currently the interpreter reduces expressions based on the most specific rule that applies to the expression. It does not stop rules that are generalisations of existing rules from contradicting one another or vice versa.

e.g.

let not true -> false
let not false -> true
let _x_ > _y_ -> not _y_ > _x_
let 1 > 0

then 0 > 1 evaluates as false

but intrepeter stills allows let 0 > 1 without an error.

This maked the rules previously defined not the general case, allowing loads of exceptions to the rule. It also makes any let command have to completely invalidate the cache

Metadata

Metadata

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions