cybre.space has reached the end-of-life and is now read-only. Please see the EOL announcement for details

one of my favorite things about rust that I'd miss if i wrote haskell again is how in rust you can just be like, redefine a binding.

like

let x = whatever
let x = func(x)

in haskell you gotta do

let x' = whatever
let x = func(x')

and that sucks imo (i personally like to do the primes first and have the one without the prime be the final thing). and its because rust is a lot more imperative than haskell is.

haskell, you can still do it the way rust does, but now you gotta be inside a monad for purely language-level reasons. the compiler will optimize it all away but its just like cmonnnn kinda sucks lol

of course the advantage to the haskell way is it makes recursion dead-simple since you can just self-reference in the right hand side of the binding

Sign in to participate in the conversation
Cybrespace

the mastodon instance at cybre.space is retired

see the end-of-life plan for details: https://cybre.space/~chr/cybre-space-eol