No, nevím. Narozdíl od té Javy měl funkci jako first class citizen. Takové věci jako spread operátor jsou taky dost fajn věc. Za mě oproti třeba takovémy Pythonu je Javascript vlastně ještě zlatý.
Popravdě řečeno, největší pain na JS jsou moduly a module resolution. Je to takový hack, existují dva systémy a pak narážíte na to, že je musíte konfigurovat v každém toolu zvlášť, někdo preferuje jeden, někdo druhý...
Pane Jirsáku, vyvíjel jste někdy něco v poslední době jinde než těch posledních pětadvacet let u vás? Oba typy modulů tu s námi ještě nějaký čas bohužel budou. Bohužel proto, že je neustále třeba řešit kompatibilitu s tím, či oním, to, že tahle knihovna je takhle, tahle jinak, že tady je špatně konfigurace ale pak se to mlátí, že tohle nerozumí tomu a ono zase tamtomu...
Fakt nejsou historie.
Jsou historie. Všechno aktuální už používá ESM. Ano, mnohde se ještě používají historické věci, já se s některými také musím potýkat. Ale ten problém pak způsobují ty historické věci, ne moduly. V JavaScriptu opravdu dnes neexistují dva rovnocenné systémy modulů. Existuje historický CommonJS a současný ESM.