Edit: I'm thinking of cognitive load too. I like to eliminate load I don't need. Keeping track of this is not something I want to do with my life
https://drpicox.medium.com/reducing-programmers-cognitive-ov...
There's absolutely no reason to make an arrow function a regular function just because it goes past a certain number of lines.
It really seems like you should become more familiar before forming an opinion. There's valid criticism to be made, but those aren't it.
http://www.synergeticapplications.com/ergonomics.htm
By the way, I feel like I'm at a bar and you're negging me
Still, Dart had everything I wanted in a front end language in 2013. I think JS devs were short sighted to reject it out of hand. It's a shame it never caught on by itself and not as a just a Flutter language. I read that Google is using it in Fuchsia so there is still a chance Dart will be big in the future!
[1] TypeScript and Turing Completeness: https://itnext.io/typescript-and-turing-completeness-ba8ded8...
Some cool features:
1) Type unions
interface A { a: string; }
interface B { b: string; }
type C = A | B;
const c: C = { a: 'a' };
2) Type assertions if ('a' in c) { /* compiler knows c is of type A here */ }
function isA(c: A): c is A { return 'a' in C } // compiler knows c is A if this returns true
3) Nice helper types interface A { ... }
ReadOnly<A> // Like A, but all properties are read-only
Partial<A> // Like A, but all properties are optional
Omit<A, 'someProp'> // Like A, but without 'someProp'
E.g. look at this: https://github.com/telegraf/telegraf/blob/v4/src/telegram-ty...
Might I suggest being less sensitive/that your reasons are overblown?