Skip to content

remove recursive solver #90

Closed
Closed
@nikomatsakis

Description

@nikomatsakis

It seems like it's time to get rid of Chalk's "recursive" solver and commit to the on-demand SLG solver. It's basically strictly better at this point.

The recursive solver code is found here:

https://github.com/rust-lang-nursery/chalk/tree/master/src/solve/recursive

We'll also want to remove this SolverChoice variant:

https://github.com/rust-lang-nursery/chalk/blob/82a8472ca9f6756d160b639dfc68f6a69076b716/src/solve/mod.rs#L183-L187

Which will entail then modifying the unit tests. They mostly run on both solvers, as controlled here:

https://github.com/rust-lang-nursery/chalk/blob/82a8472ca9f6756d160b639dfc68f6a69076b716/src/solve/test/mod.rs#L72

But sometimes the tests have distinct results for the recursive vs SLG solvers:

https://github.com/rust-lang-nursery/chalk/blob/82a8472ca9f6756d160b639dfc68f6a69076b716/src/solve/test/mod.rs#L932-L937

And of course we'll have to modify chalki, the command-line interpreter too. We can just remove this arm:

https://github.com/rust-lang-nursery/chalk/blob/82a8472ca9f6756d160b639dfc68f6a69076b716/src/bin/chalki.rs#L226-L228

though we may just want to remove the whole --solver option.

Metadata

Metadata

Assignees

No one assigned

    Labels

    good first issueA good issue to start working on Chalk with

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions