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

support [r| { a,b :: T } |] syntax #19

Open
aavogt opened this issue Mar 26, 2015 · 3 comments
Open

support [r| { a,b :: T } |] syntax #19

aavogt opened this issue Mar 26, 2015 · 3 comments

Comments

@aavogt
Copy link
Contributor

aavogt commented Mar 26, 2015

Currently it fails with Parser failure: Failed reading: satisfy. Contexts: ["type'","'('"]. which could be a better message too.

@rabipelais
Copy link
Contributor

Would this be equivalent to [r| { a :: T, b :: T } |]?

@aavogt
Copy link
Contributor Author

aavogt commented Mar 26, 2015

yes just like how in haskell you can write data T t = Con { a, b :: t }

@nikita-volkov
Copy link
Owner

Concerning the error message see #4.

Concerning getting this syntax supported, I'm conflicted about this. On one hand, as long as it concerns only the type-level syntax, I don't see this creating any ambiguity. OTOH I don't see much usefulness in this syntax and instead see it as more of pertaining to feature bloat. So my vote is negative on this one. I won't stand in your way if you decide to implement it, however I must inform you that the preprocessor reimplementation of the library will initially be lacking this feature either way, since it's a complete rewrite of the related part of the library.

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

No branches or pull requests

3 participants