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

engineering peer review #17

Open
2 of 4 tasks
KiaraGrouwstra opened this issue Jan 26, 2020 · 0 comments
Open
2 of 4 tasks

engineering peer review #17

KiaraGrouwstra opened this issue Jan 26, 2020 · 0 comments

Comments

@KiaraGrouwstra
Copy link
Owner

KiaraGrouwstra commented Jan 26, 2020

I feel like on the engineering side I've picked some libraries where nicer options might be available, notably using a combination of haskell-src-exts and hint for respectively constructing and evaluating ASTs as opposed to using ghc-lib / ghc-lib-parser to stick with native functionality.

things I'm using the interpreter for:

  • indirectly, instantiateTypes / zonking
  • matchesConstraints / type matching
  • fnIoPairs / evaluating functions on their sample inputs to get outputs (for dataset generation seemingly my main performance culprit, see run-time performance #5)
  • exprType: get the type of an expression
  • genInputs: generate examples -- this part only works on concrete (instantiated) types not containing functions 😐, but that's on QuickCheck that I'm using for this (if thru the interpreter).
  • fitExpr: check if a candidate fits into a hole by just type-checking the result through the interpreter (then checking if the expression type is still a function if using currying over lambdas).

some places I may wanna check for inspiration:

This was referenced Jan 31, 2020
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

1 participant