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

Big list of wants: better (meta)programming facilities #152

Open
5 of 20 tasks
plt-amy opened this issue Oct 24, 2022 · 1 comment
Open
5 of 20 tasks

Big list of wants: better (meta)programming facilities #152

plt-amy opened this issue Oct 24, 2022 · 1 comment
Labels
enhancement New feature or request

Comments

@plt-amy
Copy link
Member

plt-amy commented Oct 24, 2022

Just a really big list of requests for an eventual refactoring of the "bootstrap" code (some parts of 1Lab, some parts of Data).

  • Proper separation between the data structures and their properties for:
    • List
    • Bool
    • Fin
  • Rescue Vec out from under the Reflection module
  • Separate reflection primitives and reflection helpers
  • Developer documentation in all the reflection modules
  • Idiom-syntax, Do-syntax, Alt-syntax for Maybe
  • Move <$> from Idiom-syntax to (e.g.) Map-syntax
  • Proper fixities for _>>=, _=<<_
  • Map-syntax instance for Arg
  • Missing "generic" combinators:
    • Idiom-syntax: <*, *>
    • <$
    • Traverse-syntax (traverse, sequence)
    • Fold-syntax (nondet, choice/asum/msum)
  • Combinator to abstract away instance search
  • Generic term traversals?
  • More convenient List ErrorPart combinators?
    • Wrap TC in a reader-style monad to carry around the logging prefix for the current tactic?
@plt-amy plt-amy added the enhancement New feature or request label Oct 24, 2022
@plt-amy
Copy link
Member Author

plt-amy commented Oct 24, 2022

  • Syntax for small lists (must ponder: also for small vectors)
  • Range syntax for lists of naturals
  • Maybe have Dec-eq/Dec-ord classes???

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

No branches or pull requests

1 participant