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
Add type arguments to let bindings as shown below.
let l @a = length @a in l @Integer [1,2,3] + l @Bool [True,False]
Motivation
The current implementation does not infer the type of polymorphic let bindings correctly. These polymorphic let bindings are allowed in Haskell and are probably needed for the translation of guards. The following is allowed in Haskell for example.
let l = length in l [1,2,3] + l [True,False]
Tasks
Add type arguments to the Bind type.
Adjust TypeInferencePass for let expressions
The text was updated successfully, but these errors were encountered:
Description
Add type arguments to let bindings as shown below.
Motivation
The current implementation does not infer the type of polymorphic let bindings correctly. These polymorphic let bindings are allowed in Haskell and are probably needed for the translation of guards. The following is allowed in Haskell for example.
Tasks
Bind
type.TypeInferencePass
forlet
expressionsThe text was updated successfully, but these errors were encountered: