Cześć,
nie wiem czy to temat na off-topic, ale spróbuję tutaj.
Zajmuję się programowaniem od kilkunastu lat i w sumie stwierdzam, że nie rozumiem wielu ważnych kwestii. Przede wszystkim nie rozumiem priorytetów przy projektowaniu języków. Weźmy na przykład taki JavaScript. Jest to język prototypowany i całymi latami myślałem, że za tą filozofią stoją solidne argumenty. Aż tu nagle dodali klasy jako syntax sugar i pojawiły się pogłoski, że typowanie i prywatne właściwości też trafiają niedługo do JavaScriptu. Języki robią się do siebie coraz bardziej podobne, pewne rozwiązania albo się sprawdzają, albo nie.
Miałem ochotę pouczyć się języka Go, ale jak zobaczyłem jego składnię, to się złapałem za głowę. Moim zdaniem jest po prostu brzydka i nieczytelna, m.in.:
- operator :=
- słowo kluczowe "type" - po co to? Myślałem, że kod ma być krótki, a przecież nazwa struktury chyba oznacza, że dodajemy typ?
- nagłówek deklaracji funkcji np. "func fib() func() int {...}" - co to ma być? Przez brak separatora zwracanego typu mózg szuka nazwy funkcji w tym gąszczu.
Jak to się dzieje, że każdy język ma takie dziwactwa? Najładniejszym językiem jaki widziałem do dnia dzisiejszego jest Swift, tam prawie wszystko wydaje się sensowne. Czy to jest tylko kwestia gustu?
No i najważniejsze pytanie, dlaczego mówi się np. "Python jest wolny", "Język <nazwa> jest szybki", skoro to tylko składnia? Wolny może być ich parser, a nie język sam w sobie. No i dlaczego świat programowania nie dąży do tego, żeby jeden język dostosowywać do potrzeb i dostosowywać jego wersje do potrzeb, tylko uczymy się całego nowego języka tylko dlatego, że tworzymy coś innego? Dlaczego jedyny przeglądarkowy język skryptowy jest akurat prototypowany? Dlaczego zastosowanie wrzuca nas w paradygmat tworzenia? Nie rozumiem tego, przecież to nie ma sensu. Jak widać języki są coraz bardziej podobne i w praniu wychodzi, że zagorzali obrońcy i przeciwnicy różnych paradygmatów się po prostu mylili i gadali dla gadania. To jest kolejna ciekawa sprawa - ile w tym wszystkim jest ślepego fanbojstwa i nietrafnej argumentacji na rzecz ulubionych języków.
Wybaczcie tak chaotyczny temat, ale musiałem to z siebie wydusić. Dziękuję z góry za dyskusję <3