těžko rozhodnout jestli je přetěžování operátorů dobrá věc nebo ne. Třeba v Numpy mi hodně pomáhá, ale kdysi v C++ to bylo dost zlo, protože to dělal každej úplně u všeho :-) Tak jestli to v C3 vývojáři pojmou nějak rozumně, tak by to bylo fajn.
Jinak není moc jasné, proč se nedají přetížit ty relační operátory. Zrovna u vektorů by to bylo fajn ne?
Motivace pro přetěžování je, že autor chce některé numerické typy implementovat ve standardní knihovně a ne přímo v jayzce, jak to dělá např. Odin. A kdyby tam nebylo přetěžování, tak by se to asi používalo špatně.
přesně tak, a udělal to IMHO dobře. Asi nemá cenu cpát podporu pro fixed point, zlomky, matice atd. přímo do jazyka, když to může být externí knihovna + přetížení základních operátorů.
Mě to tedy chybí v Go, taková Gonum je strašně špatně použitelná v porovnání s Numpy.
Zrovna u vektoru má smysl akorát rovnost. A ta má smysl u hromady věcí. Celá paleta relacnich operátorů má smysl spíš u zlomků, čísel s neomezenou přesností a podobných věcí. TY bývají obvykle spíš v nějaké knihovně, než přímo v jazyce.
Ale jestli nejde přetížení ani rovnost, tak to není úplně fajn.