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

Replace docEval and docEvalInline to require that functions be pure #23

Closed
pchiusano opened this issue Jul 16, 2021 · 2 comments
Closed
Labels
pull-request A pull request discussion ticket

Comments

@pchiusano
Copy link
Member

pchiusano commented Jul 16, 2021

This is the change to base to go with unisonweb/unison#2238. It tweaks the signature of docEval and docEvalInline to disallow abilities.

The signature actually looks the same in the diff due to this bug unisonweb/unison#2242

I went ahead and added those entries to the default patch. So doing todo on trunk will show you docs that depend on the old version of docEval and docEvalInline. I spotted a few docs that couldn't typecheck with the new signature this way.

Code review

The changes summarized below are available for you to review, using the following command:

pull-request.load https://github.com/unisonweb/base:.trunk https://github.com/pchiusano/unisoncode:.prs._docEval

Updates:

 Exception.catchMany.doc : Doc2
 ↓
 Exception.catchMany.doc : Doc2
 +  unisoncomputing2021 : License
 +  pchiusano           : Author
 +  rlmark              : Author

 Exception.catchOnly.doc : Doc2
 ↓
 Exception.catchOnly.doc : Doc2
 +  unisoncomputing2021 : License
 +  pchiusano           : Author
 +  rlmark              : Author

 Exception.finally.doc : Doc2
 ↓
 Exception.finally.doc : Doc2
 +  unisoncomputing2021 : License
 +  pchiusano           : Author
 +  rlmark              : Author

 List.docs.traversing : Doc2
 ↓
 List.docs.traversing : Doc2
 +  unisoncomputing2021 : License
 +  pchiusano           : Author
 +  runarorama          : Author

 List.initialize : Nat -> (Nat ->{e} a) ->{e} [a]
 -  _base.List.initialize.doc    : Doc2
 +  _docEval.List.initialize.doc : Doc2

 Universal.compareOn : (a ->{e} x) -> a -> a ->{e} Ordering
 -  _base.Universal.compareOn.doc    : Doc2
 +  _docEval.Universal.compareOn.doc : Doc2

 Universal.ordering : a -> a -> Ordering
 -  _base.Universal.ordering.doc    : Doc2
 +  _docEval.Universal.ordering.doc : Doc2

 syntax.docEval : 't -> Doc2
 ↓
 syntax.docEval : 'a -> Doc2

 syntax.docEvalInline : 't -> Doc2
 ↓
 syntax.docEvalInline : 'a -> Doc2

There were 46 auto-propagated updates.

 patch patch (added 2 updates)
@pchiusano pchiusano added the pull-request A pull request discussion ticket label Jul 16, 2021
@pchiusano

This comment has been minimized.

@pchiusano
Copy link
Member Author

This is merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pull-request A pull request discussion ticket
Projects
None yet
Development

No branches or pull requests

1 participant