-
Notifications
You must be signed in to change notification settings - Fork 23
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
Move basic function type inference to squiggle-lang #2767
base: main
Are you sure you want to change the base?
Conversation
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
1 Ignored Deployment
|
Apply Sweep Rules to your PR?
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2767 +/- ##
==========================================
+ Coverage 71.56% 71.75% +0.18%
==========================================
Files 118 118
Lines 6465 6574 +109
Branches 1318 1360 +42
==========================================
+ Hits 4627 4717 +90
- Misses 1830 1849 +19
Partials 8 8 ☔ View full report in Codecov by Sentry. |
We used to do basic user function type inference in the Components. This tries to move most of that work to squiggle-lang. The downside is that this does add substantial complexity to squiggle-lang. The upside is that this seems like stuff we likely want there anyway, and after this, the functionality works a bit better (it's better thought through).
I think this general direction is good, but am sure this implementation can be improved a lot.
Some thoughts:
frUnknown
, and likelyfrWithDomain
. After we do this, we might be able to remove Domain fromSqLambdaParameter
- exporting the types instead. We'd also want some more helpers likegetDomain(FrType<any>)
, if the domain is nested.This closes #2761, among other things.