Jiste, proti slozitosti nastroju nemuzu nic namitnout, ale neberu to jako duvod, proc udelat "hloupy" jazyk. Prace stroje je o nekolik (desitek?) radu levnejsi, nez prace programatora. Pokud mam jazyk s nizkou mirou abstrakce, jako Go, tak je programator odsouzen k opakovani psani a cteni boilerplatu.
Souhlasím. Ale nevidím to tak příkře jako ty. Kdybych chtěl propagovat opak: přílišná volnost v úrovni abstrakce a přílišný důraz na DRY vede k sice kratšímu, ale o to nečitelnějšímu kódu. Navíc otrocká implementace DRY může taky způsobit, že všechno centralizuješ/abstrahuješ a pak máš velké problémy jednu část přizpůsobit/poupravit. Mám s tímhle konkrétní špatnou zkušenost z jednoho projektu - všechno bylo vyřešeno tak abstraktně/jednotně/DRY, že se kdokoli pak bál na cokoli šáhnout, aby nerozbil něco úplně jinde...
Osobně mám třeba docela špatné zkušenosti s tím, co produkují Rubyisti. To jsou takové kejkle s metaprogramováním, monkeypatchingem a jánevímčím (because we can!), že pak říct, co a přesně jak doopravdy ten kód dělá, je nadlidský úkol. Ideální řešení všeho je samozřejmě DSL (because we can!)
Podobný, ale o několik řádů lepší je to s haskellisty - taky si libují v abstrakcích, kde prokousat se z abstraktní roviny až dolů není žádný med, ale aspoň haskellisti bývají nadprůměrně chytří, tak to aspoň dělají dobře.
C neni jaksi zamyslen jako univerzalni jazyk, nic co by melo nahradit Javu, Python ci JavaScript.
Tak to potom asi moc nechápu. V C je napsaná snad největší množina všeho možného softu. Od GUI po matematické knihovny...
Rozhodne nesouhlasim s tim, ze uzivatelska generika nejsou nutna.
Všechno je jenom otázka ceny. Když je nemám, platím nějakou cenu, kterou mi může vyvážit něco jiného... Ale jinak v tomhle taky souhlas: osobně by mi bylo sympatičtější, kdyby generika měl.
Videl jsem, jak se "resi" generika. Copy/paste, potlacenim typove kotroly ci generatory kodu.
Souhlas, je to zoufalost.