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

Borrow good ideas from moniker #28

Open
lambdageek opened this issue Aug 24, 2018 · 1 comment
Open

Borrow good ideas from moniker #28

lambdageek opened this issue Aug 24, 2018 · 1 comment

Comments

@lambdageek
Copy link
Owner

moniker is a binding combinators library for Rust that takes its inspiration from Unbound.

https://github.com/brendanzab/moniker

One interesting design decision was to split up Alpha into a pattern type class and a term type class.

The main change that we make is to have two separate traits (BoundTerm and BoundPattern) in place of Unbound's single Alpha type class. We've found that this better captures the semantics of the library, and greatly cuts down on the potential for accidental misuse.

It's worth exploring whether this makes sense for us, too.

@TOTBWF
Copy link
Contributor

TOTBWF commented Aug 25, 2018

In a similar vein Ignore<T> looks very useful. #30 should be a starting point for an implementation.

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

No branches or pull requests

2 participants