You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Consider our favorite data Ord a => BST a :: L | N a (T a) (T a)
And a wrapper datatype data WD a = MkWD (BST a)
we currently store MkWD :: BST a -> WD a but in ideal world we would like to store MkWD :: BST @ a => BST a -> WD a. This will potentially enable short circuiting the solver to reuse the dictionaries eg:
f :: Ord a => a -> T a -> T a
f a (MkWD t)= MkWD (insert a t)
The text was updated successfully, but these errors were encountered:
Possible issue with engineering.
datacon context, type arguments are all knot tied, so elaborating it will be troublesome.
Currently we use the stupid_theta route, were we just drop them while compiling to core.
Consider our favorite
data Ord a => BST a :: L | N a (T a) (T a)
And a wrapper datatype
data WD a = MkWD (BST a)
we currently store
MkWD :: BST a -> WD a
but in ideal world we would like to storeMkWD :: BST @ a => BST a -> WD a
. This will potentially enable short circuiting the solver to reuse the dictionaries eg:The text was updated successfully, but these errors were encountered: