I like it because it unifies function definitions and value definitions
Conversation
mmm. I did notice that but the arrow of implication still makes more sense to me, as with in Rust's
let fun: fn(Arg) -> Ret = |arg| arg.val;
1
1
we do use => amusingly, but only for match arms.
1
1
indeed we don't, for whatever reason we decided we like Ruby closures better.
1
1
ohhh yeah we decided fn() was fine for the simple case and for the complex case uhh
so
it turns out
we have three different function traits :D
1
1
FnOnce<Args>
call_once(self, Args) -> Output
FnMut<Args>
call_mut(&mut self, Args) -> Output
Fn<Args>
call(&self, Args) -> Output
2
1
yeah… really screams out for some sort of polymorphism over closure usage… or something like that
2
1
hoping languages like Granule can end up figuring this kind of thing out


