a little (ghc) #haskell evaluation quiz:
let !(x,y) = k in z
can be rewritten in terms of seq as
let xy@(x,y) = k in xy `seq` z
Now, can you do the same rewrite-bang-patterns-as-seq thing for:
let (!x, y) = k in z
?
Once you have a guess, try testing it with these examples! > let (!x, y) = undefined in True > let (!x, y) = undefined in y > let (!x, y) = undefined in x
-
-
> let (!x, y) = undefined in True > let !(x, y) = undefined in True > let !_ = undefined in True
-
try it out in ghci and see if you're surprised by the result :)
- Još 7 drugih odgovora
Novi razgovor -
Čini se da učitavanje traje već neko vrijeme.
Twitter je možda preopterećen ili ima kratkotrajnih poteškoća u radu. Pokušajte ponovno ili potražite dodatne informacije u odjeljku Status Twittera.