Dennis Ritchie – pierwsza rocznica śmierci

Dennis Ritchie – pierwsza rocznica śmierci

    przez -
    29 299
    Dennis Ritchie
    12 października 2011 roku zmarł w wieku 70 lat, pionier i wybitny informatyk naszych czasów – Dennis Ritchie. Dzisiaj mija pierwsza rocznica od czasu jego śmierci. Największą zasługą było stworzenie wspólnie z Kernighanem języka programowania C, włącznie z książką do nauki o nim. Gdyby nie C, nie mielibyśmy dzisiaj wielu aplikacji. Drugą zasługą, która odmieniła cały świat informatyki było napisanie razem z Kenem Thompsonem pierwszego na świecie Uniksa, który był wzorowany na Multicsie.

    Unix wniósł ogromny wkład w rozwój systemów operacyjnych, jak idea hierarchicznego systemu plików oraz reprezentacji niemal wszystkich składników systemu jako plików (również urządzeń peryferyjnych). Dzięki użyciu wysokopoziomowego języka C, można było przenosić system na wiele platform sprzętowych.

    Na bazie Uniksa powstał Mac OS X oraz znane nam dzisiaj jądro Linux. Wraz z Kenem Thompsonem wyróżniony został nagrodami: Turinga w 1983, Amerykańskim Narodowym Medalem Technologii w 1998 i Japan Prize w 2011.

    Podobne artykuły

    FreeBSD

    przez -
    10 443
    • Pingback: Archiwum Dennis Ritchie – pierwsza rocznica śmierci()

    • www.edu.zsk.p.lodz.pl

      Ritchiemu chwała, natomiast stwierdzenie że bez języka C nie mielibyśmy wielu aplikacji jest ryzykowne – horror vacui. Nie mniej ryzykowne jest swtierdzenie, że jądro Linux powstało na bazie Uniksa (nawiasem mówiąc – a której linii?).

    • mlkki

      “Dzięki użyciu wysokopoziomowego języka C” really? REALLY?

      • o_O

        Really.

        Języki dzielą się na niskopoziomowe (kod maszynowy, asembler), wysokopoziomowe (C, C++) oraz zabawki dla dzieci i amatorów (Java, dotnet, visual basic, pascal i praktycznie cała reszta).

      • Czekam aż jakiś fanboy Fortrana to zaora ;). Freepascal zaś niewiele się różni w możliwościach od C++, ma np. przeciążanie operatorów( z czasem braki się zniwelują). W przyszłości zaś będą możliwe bezpośrednie odwołania do bibliotek napisanych w C++, by nie trzeba było robić portów, bindingów, etc. Poza tym ma jeszcze backend do wirtualnej maszyny Javy, czyli kompilator FPC jest wstanie generować bytecode Javy dla JDK od 1.5 wzwyż i dla Dalvika. Przede wszystkim posiada zaś potężne narzędzie RAD – Lazarus, które jest otwartym oprogramowaniem. Nie piszę w tym języku, ale sporo się nim interesuje. FPC jest też wykorzystywany w pisaniu gier na iOS, bo świetnie wspiera platformę ARM.

        .NET to kod zarządzany, a nie natywny, więc jest to zupełnie inne narzędzie. Jego największą wadą i zaletą jest to, że stoi za nim M$. Każdy wie jakie są obawy. Poza tym powolność tego typu rozwiązań niweluje trochę JIT. Zaś Garbage Collector'y mogą miewać lagi… Pozostaje też zasobożerność… Nie lubię tego typu rozwiązań jak Java, .NET i Python. Ale to są tylko narzędzia. A we wprawnych rękach mogą wiele.

        Wielka szkoda, że Dennis Ritchie nie żyje.

      • o_O

        Pascal to kupa by design. Na przykład ze względu na odwrotną kolejność przekazywania argumentów funkcji na stos, co powoduje niemożliwość zaimplementowania funkcji o niezdefiniowanej ilości argumentów (http://en.wikipedia.org/wiki/X86_calling_conventions). Albo konieczność deklaracji zmiennych w osobnym bloku, co, poza byciem niewygodnym, uniemożliwia także używania bloków kodu ("{…}") do określania czasu życia obiektu. Oraz mnóstwo innych wad.
        Nie bez przyczyny C i C++ są chwalone (przez tych co mają jakąkolwiek wiedzę), bo po prostu zostały dobrze przemyślane i zaprojektowane.

        Java i dotnet to buble dla amatorów, którzy nie tylko nie umieją sami po sobie posprzątać, ale nawet nie śni im się zaprzęgnięcie destruktorów do ułatwienia sobie pracy. Po prostu ktoś nie umiał C++, więc stworzył Javę, żeby rozwiązywać problemy, które dla dobrego programisty C++ nie istnieją. I mamy efekty: w Javie programuje mnóstwo amatorów – szybko, ale czy bezpiecznie i dobrze?
        A narzutem związanym z ułatwianiem pracy amatorom w Javie i dotnecie jest powolność. Straszliwa.
        Dodatkowo dotnet obwarowano patentami.
        Nic tylko uciekać od tego bagna jak najdalej.

        Polecam C, C++ i ich biblioteki. Ale tylko tym, co umieją albo chcą umieć programować.

      • Kenji

        Przypominam (znowu, co ja jakaś niezapominajka jestem?), że Pascal powstał WCZEŚNIEJ niż C i p. Ritchie z kolegą mogli się uczyć na jego niedoróbkach.

      • MikolajS

        " I mamy efekty: w Javie programuje mnóstwo amatorów – szybko, ale czy bezpiecznie i dobrze?"
        To systemy bankowe pisze się w C++, bo myślałem, że w Javie?

        " w Javie i dotnecie jest powolność. Straszliwa. "
        Chyba pora zejść na ziemię.

      • mak

        Java i .Net to zabawki dla amatorów. Dorośnij, a przede wszystkim poczytaj o tym gdzie obecnie w programowaniu robi się pieniądze.
        Idę o zakład, że nie znasz co najmniej połowy właściwości Javy jako języka i przynajmniej 3/4 właściwości referencyjnych platform Javy. Skąd to wiem? Bo postawiłeś w jednym rzędzie Javę, .Net i Pascala.
        Natomiast wysoko- czy niskopoziomowość pierwotnego C to rzecz do dyskusji. Ale na szczęście narodził się o_O, który bez namysłu obwieścił światu prawdę objawioną. Podczas gdy nawet na Wikipedii pojawia się wzmianka o niepewności kwalifikacji dot. wysoko- czy niskopoziomowości C, no ale rozumiem, że z poziomu wyżyn wiedzy i doświadczenia o_O sieganie do tak marnych źródeł to jak zbrukanie czci. Podpisano – amator uczący amatorów zabawek.

      • mak

        Java i .Net to zabawki dla amatorów. Napisałem na ten temat dłuższy komentarz, ale mam wrażenie że był zbyt ad personam i znikł. Wobec tego napiszę krócej. Jest to bzdura pokroju określenia "najwolniejszy język programowania". Pozdrawiam i życzę wielu lat w błogiej nieświadomości swojej niewiedzy. Podpisano – amator uczący superamatorów zabawek.

      • MikolajS

        Języki dzielą się na kod maszynowy w którym piszą prawdziwi mężczyźni, assembler dla leniwych i C/C++ dla totalnych głąbów, że o wynalazkach typu Java już nie wspomnę.

    • o_O

      > Gdyby nie C, nie mielibyśmy dzisiaj wielu aplikacji.

      Gdyby nie C nie byłoby C++ ani nawet zabawek dla amatorów jak Java czy dotnet.

      • MikolajS

        Bawiąc się taką zabawką jak Java można mieć przynajmniej radość, a nie tak jak nudnym i beznadxiejnym C++ :-)
        Ciekaw jestem czy to samo co Ty mówili programiści C o języku C++.

      • o_O

        C++ jest rozszerzeniem C o pełną obiektowość i kilka innych dodatków zachowując przy tym większość zalet języka C.

        Java (dotnet zresztą też) jest uproszczeniem języka obiektowego zwalniającym programistę z myślenia.
        Tylko czy chcemy, aby programowali dla nas niemyślący ludzie? Jeśli ktoś nie potrafi przewidzieć, w którym miejscy zniszczyć obiekt, to czy można mu powierzać dużo bardziej złożone algorytmy, w tym asynchroniczne, często odpowiadające za ludzkie życie albo pieniądze?
        Do tego Java ma także całe piekło tragicznie wolnych frameworków jeden na drugim. Ciekawe, po co ich tyle, skoro Java jest takim dobrym językiem?

        To co w Javie było na prawdę ważne i przełomowe, to maszyna wirtualna. Sprawdza się na serwerach (o ile pominiemy powyższe zarzuty). Ale nie do tworzenia wszystkiego na miłość Boską!

      • bob

        No i po co podkarmiasz trola?

      • człowiek

        Może Java to zabawka dla amatorów, ale działa szybciej od c++.

    • Gerard Stańczak

      jest formularz do zgłaszania błędów, nie zaśmiecaj komentarzy

      • o_O

        To nie było zgłoszenie błędu tylko mój komentarz do wpisu jako całości. Nie cenzuruj komentarzu.

      • Gerard Stańczak

        nie dotyczył tematu wpisu i był osobistym komentarzem do autora odnośnie jego poziomu znajomosci języka polskiego. Do tego służy formularz zgłaszania błędów oraz kontakt do redakcji

    • Kenji

      Odnośnie "co by było, a nie było" to przypominam, że C się nie wyłoniło z pierwotnego chaosu i jest w gruncie rzeczy rozszerzeniem B o "normalny" system typów. Poza tym przed C również istniały języki poziomu >ASM.

      PS: Nie mam oczywiście zamiaru umniejszać zasług p. Ritchiego (który zresztą pracował również przy B), ale niektórzy się trochę za bardzo rozpędzają w swoich wieszczeniach ;].

      • mak

        Otóż to. Nie byłoby C, to byłby B2, K–, PSA, SKF albo inny skrót. Nie byłoby Ritchiego, były jakiś Smith, Radhavashan, Jao Li. Nie ma ludzi i rzeczy niezastąpionych.

      • o_O

        Nie sądzisz, że coś musiało być w C wyjątkowego, skoro wybiło się ponad resztę i przetrwało już 40 lat?

        A może jednak gdyby nie Ritchie, mielibyśmy w tym czasie języki, które żyłyby maksimum kilka lat i były co chwila zastępowane czymś innym, co uniemożliwiłoby standaryzację i jakiekolwiek reużycie kodu?

        Twoje wywody są puste i niepoprawne, bo opierasz je na pseudologice. Niby trudno zaprzeczyć na pierwszy rzut oka, ale jak ktoś się zastanowi, to wychodzi, że piszesz totalne bzdury.
        Bardzo przypomina to na przykład obecnych pseudonaukowców, których jedynym chyba celem w życiu jest walka z Chrześcijaństwem za pomocą takich pseudologicznych teorii, np. dowodzących (sic!) nieistnienie Boga czy duszy albo istnienia zjawisk "niemieszczących" się w jedynej słusznej teorii. Ot echo komunistycznego programu przenikania do zachodnich placówek naukowych i zaszczepiania "poprawnego" myślenia wśród studentów – ale to zupełnie osobny temat.

      • herr

        No… no… Nie spodziewałem się tu wywodów o komunistycznych spiskach. Szacun ^^'

      • Kenji

        Nie sądzisz, że coś musiało być w Fortranie wyjątkowego, skoro wybił się ponad resztę i przetrwał już 55 (sic!) lat?

        Poza tym powtarzam: W samym C nie było nic takiego "wyjątkowego", bo to tylko B z typami.

      • mak

        Panie specjalisto od pełnej logiki, ani Kenji, ani ja nie napisaliśmy nic co by podważało zasługi Ritchiego i języka C.
        Kenji napisał, że Ritchie nie działał w próżni, rozwinął koncepcje już znane w tym czasie.
        Ja napisałem, że gdyby nie zrobił tego Ritchie, to pewnie zrobiłby to kto inny.
        Żadne z tych zdań nie zaprzecza, że Ritchie osiągnął zasłużony sukces.
        Oba są argumentami przeciwko tezie, że gdyby nie Ritchie i C, to nie byłoby tego czy tamtego. Byłoby, osiągnięte przez kogo innego, może inną drogą. Równie dobrze możnaby powiedzieć, że gdyby nie Karl Benz, to nie byłoby samochodów.

      • mak

        W sumie znalazłem analogię między teorią o nieistnieniu Boga a teorią o tym, że informatyka rozwinęłaby się mimo nieobecności Ritchiego. Obie są nieweryfikowalne.

    • o_O

      s/istnienia/nieinstnienia/

    • Bastian

      Hahah co jeden tu to lepszy…

    • Pan Łukasz

      Dennis Ritchie i Ken Thompson – architekci systemu UNIX. Richard Stallman i Linus Torvalds – reformatorzy ekosystemu UNIX. Chwała tym ludziom.